如何让DataGridview控件自动滚动到指定的行或列
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何让DataGridview控件自动滚动到指定的行或列相关的知识,希望对你有一定的参考价值。
可以从DataGrid继承一个新的类,参考如下的代码,这样滚动条就会一直显示:/// <summary>
/// DataGride 的摘要说明。
/// </summary>
public class DataGride:System.Windows.Forms.DataGrid
public DataGride()
//
// TODO: 在此处添加构造函数逻辑
//
this.VertScrollBar.VisibleChanged+=new EventHandler(VertScrollBar_VisibleChanged);
protected override void OnDataSourceChanged(EventArgs e)
base.OnDataSourceChanged (e);
this.VertScrollBar.Visible=true;
private void VertScrollBar_VisibleChanged(object sender, EventArgs e)
this.VertScrollBar.Visible=true;
参考技术A 刚开始时我使用的是FirstDisplayedScrollingRowIndex和FirstDisplayedScrollingColumnIndex等属性,也能实现需求,但滚动太大,效果不理想。
后来才发现,通过设置CurrentCell属性效果最好。
你也试试。
如何让c#winform 根据datagridview数据筛选 filter
微软自带的datagridview并没有filter功能,要么换个第三方控件,要么自己重新封装,自己实现。 参考技术A 1、筛选某个字段满足指定条件的记录DataView dv = myDs.Tables[0].DefaultView;
dv.RowFilter = "Year=1427";
gv.DataSource = dv;
Year这个是myDs.Tables[0]的一个字段。这样就是只有Year的值等于1427的记录绑定gv控件。
2、用RowFilter对指定列进行模糊匹配
我们都知道sql语句里面有like '%x%' 这样的表达式可以对列进行模糊查询。其实DataView的RowFilter也可以的代码:
dv.RowFilter="Name like '%lanhusoft%'";
这样dv只显示Name字段包含lanhusoft的数据行。
3、多个条件筛选行
RowFilter还可以有多个条件,比如:
dv.RowFilter="Name like '%lanhusoft%' and Year=1427","and"将两个条件结合起来了,表示只返回两个条件要同时满足的
的行记录。
以上是关于如何让DataGridview控件自动滚动到指定的行或列的主要内容,如果未能解决你的问题,请参考以下文章