如何防止 DataGridView 的前三行滚动消失?
该应用程序采用C# Windows Forms与 .NET Framework 4.5。
该应用程序采用C# Windows Forms与 .NET Framework 4.5。
DataGridViewRow.Frozen Property
应该与滚动的 DataGridView
一起工作,唯一需要做的是在DataGridView.DataBindingComplete
事件中设置它:如下所示:。void dataGridView1_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e)
{
if (dataGridView1.Rows.Count >= 3)
{
dataGridView1.Rows[2].Frozen = true;
}
}
Rows[2]
设置为冻结状态,从该位置开始的所有行也将被冻结。将事件添加到Grid中,如下所示:此属性允许用户在滚动DataGridView时保留一个或多个重要信息的行。 上面所有的行也会被冻结。
dataGridView1.DataBindingComplete += dataGridView1_DataBindingComplete;
DataTable dt = GetDataFromDB();
dataGridView1.DataSource = dt;
在StackOverflow上可以看到一个类似的问题解答:如何在DataGridView中冻结前两列和顶部行
你需要使用DataGridViewRow.Frozen属性来实现你想要的效果,它可以让你冻结任意行(防止其被滚动)。
你可以像这样使用它:
dataGridView.Rows[0].Frozen = true;
这在MSDN中有很好的文档:http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridviewrow.frozen%28v=vs.110%29.aspx
如果您在执行此操作时遇到任何问题,请将代码添加到您的问题中。