我正在尝试向下滚动带有代码的 WPF DataGrid。
我用
int itemNum=0;
private void Down_Click(object sender, RoutedEventArgs e)
{
if (itemNum + 1 > dataGridView.Items.Count - 1) return;
itemNum += 1;
dataGridView.UpdateLayout();
dataGridView.ScrollIntoView(dataGridView.Items[itemNum]);
}
仅当出现以下情况时才会向下滚动itemNum
当前未显示行。
例如,如果 DataGrid 足够长,可以容纳 10 行,而我有 20 行,则需要调用此函数 11 次(直到itemNum
是 11) 以便滚动到下一行。
如果该行已经适合网格(即使它是屏幕上的最后一个),它不会向下滚动。
我想实现的是,当我调用此方法时,网格会将下一行带入网格顶部(就像滚动条一样)。
为什么它不起作用?
使用DataGridView.FirstDisplayedScrollingRowIndex。 罢工>
int itemNum=0;
private void Down_Click(object sender, RoutedEventArgs e)
{
itemNum++;
if (itemNum > dataGridView.Items.Count - 1) return;
//dataGridView.UpdateLayout(); <-- I don't think you need this
dataGridView.FirstDisplayedScrollingRowIndex = itemNum;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)