4

我有 2 个具有相同列数的数据网格

Datagrid1仅显示标题, Datagrid2就在它下方显示所有数据。本质上,需要同步 2 个网格才能显示为 1 个网格。

我的问题是我需要隐藏 的水平滚动条datagrid1,但只显示datagrid2. 当用户滚动时datagrid2,我需要以编程方式同步上的标题datagrid1

任何人都可以建议吗?

4

4 回答 4

5

尝试这个..

dataGridViews1.ScrollBars = ScrollBars.None;

 private void dataGridViews2_Scroll(object sender, ScrollEventArgs e)
    {
       int offSetValue = dataGridViews1.HorizontalScrollingOffset;

      try 
          { 
            dataGridViews1.HorizontalScrollingOffset = offSetValue; 
          }
      catch { }

           dataGridViews1.Invalidate();
    }
于 2013-12-24T12:41:11.887 回答
4

您可以设置 DataGridViews ScrollBasr 属性来隐藏垂直滚动条

例如

dataGridViews1.ScrollBars = ScrollBars.None;

或在链接http://msdn.microsoft.com/en-us/library/system.windows.forms.scrollbars查看其他枚举值

于 2012-07-17T19:19:18.197 回答
0

我和你有同样的概念..我已经按照以下方式解决了它:它可以帮助你。

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;
    }
于 2013-10-07T12:25:43.297 回答
0

您可以设置 VerticalScrollingOffset 值以将滚动条定位在所需的索引处。处理第二个 DGV 中的 Scroll 事件并为第一个 DGv 设置此 VerticalScrollingOffset。这应该会有所帮助。

于 2013-06-18T06:53:29.010 回答