WPF去除DataGrid多余的空白列(数据绑定)
对于DataGrid控件,如果我们使用了数据绑定,设置AutoGenerateColumns=”True”,则会在自动生成列的时候,在列头的末尾有一个多余的填充列。要想去除该空白列也是很简单的,只需将DataGrid放入ScrollViewer中,这时又会出现滚动条不能使用的问题,需要在后台添加DataGrid的滚轮预览事件(注意是PreviewMouseWheel):
private void AttributeDGrid_PreviewMouseWheel(object sender, MouseWheelEventArgs e)
{
if (e.Delta > 0)
{
scrollViewer.LineUp();
}
else if (e.Delta < 0)
{
scrollViewer.LineDown();
}
}
注意:经测试,将DataGrid放入ScrollViewer空间中会导致数据加载很慢(ScrollViewer会等待DataGrid完全渲染完毕),影响效率。