所以,我有一个DataGridView,它禁用了行标题,为多行单元格文本设置了wrapmode,并调整了行的自动调整以适应多行文本。
在代码中:
view.RowHeadersVisible = false;
view.DefaultCellStyle.WrapMode = DataGridViewTriState.True;
view.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;
问题是,与没有设置相比,设置AutoSizeRowsMode属性会使视图更新速度变慢。
以下是一个或多或少相同问题的链接:
他们的解决方案:
view.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.DisplayedCells;
view.Scroll +=new ScrollEventHandler(view_Scroll);
private void view_Scroll(object sender, ScrollEventArgs e)
{
//Workaround for datagrid view bug.
((DataGridView)sender).AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.DisplayedHeaders;
((DataGridView)sender)AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.DisplayedCells;
}
现在,问题是行标题被禁用,因此我的程序在滚动时就崩溃了。
我希望任何人都能找到解决办法,或至少知道我能做些什么。
答案 0 :(得分:1)
您只需要这个来自动调整行(不需要view_Scroll
)。
view.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.DisplayedCells;