【问题标题】:Center current record in DataGridView在 DataGridView 中居中当前记录
【发布时间】:2011-02-24 20:06:31
【问题描述】:

当以编程方式更改 DataGridView 中的当前记录时,是否可以使该记录在网格中居中(垂直)?当我更改当前记录时,它显示为顶行或底行。我希望它在中间。这在 WPF 中可能/更简单吗?

【问题讨论】:

    标签: winforms user-interface datagridview controls


    【解决方案1】:

    我没有尝试过,但如果所有行的高度相同,我认为您可以将第一个可见行设置为所选行的索引减去可见行数的一半。

    首先,选择要居中的行,然后:

    int x = grid.SelectedRows[0].DisplayIndex;
    
    grid.FirstDisplayedScrollingRowIndex = x - grid.DisplayedRowCount() / 2;
    

    【讨论】:

    • 它有效。谢谢。尽管您可能指的是 grid.SelectedRows[0].Index;
    • 也为我工作。对于任何可能偶然发现这一点并且不知道如何选择行的人,您可以这样做grid.Rows[index].Selected = true;
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多