我有 2 个具有相同列数的数据网格
Datagrid1
仅显示标题,
Datagrid2
就在它下方显示所有数据。本质上,需要同步 2 个网格才能显示为 1 个网格。
我的问题是我需要隐藏 的水平滚动条datagrid1
,但只显示datagrid2
. 当用户滚动时datagrid2
,我需要以编程方式同步上的标题datagrid1
。
任何人都可以建议吗?
我有 2 个具有相同列数的数据网格
Datagrid1
仅显示标题,
Datagrid2
就在它下方显示所有数据。本质上,需要同步 2 个网格才能显示为 1 个网格。
我的问题是我需要隐藏 的水平滚动条datagrid1
,但只显示datagrid2
. 当用户滚动时datagrid2
,我需要以编程方式同步上的标题datagrid1
。
任何人都可以建议吗?
尝试这个..
dataGridViews1.ScrollBars = ScrollBars.None;
private void dataGridViews2_Scroll(object sender, ScrollEventArgs e)
{
int offSetValue = dataGridViews1.HorizontalScrollingOffset;
try
{
dataGridViews1.HorizontalScrollingOffset = offSetValue;
}
catch { }
dataGridViews1.Invalidate();
}
您可以设置 DataGridViews ScrollBasr 属性来隐藏垂直滚动条
例如
dataGridViews1.ScrollBars = ScrollBars.None;
或在链接http://msdn.microsoft.com/en-us/library/system.windows.forms.scrollbars查看其他枚举值
我和你有同样的概念..我已经按照以下方式解决了它:它可以帮助你。
private void dgvHeader_ColumnWidthChanged(object sender, DataGridViewColumnEventArgs e)
{
//When Header Grid Width Changes automatically Below Grid's COLUMN width will be changes
dgvData.Columns[e.Column.Index].Width = e.Column.Width;
}
您可以设置 VerticalScrollingOffset 值以将滚动条定位在所需的索引处。处理第二个 DGV 中的 Scroll 事件并为第一个 DGv 设置此 VerticalScrollingOffset。这应该会有所帮助。