Silverlight DataGrid 控件 - 如何停止对列进行排序?
-
01-07-2019 - |
题
继续我昨天的问题,我从中得到的 Silverlight 数据网格 问题现在,当对包含大量数据的列(例如包含 SQL 语句的 where 子句的文本列)进行排序时,会导致堆栈溢出错误。当您排序时,它将触发数据网格的 SelectedIndexChanged 事件,然后仍然尝试排序。如果再次单击标题,则会发生堆栈溢出。
有谁知道如何停止此控件对列的排序?所有其他列都排序良好(但仍然会触发那个该死的 SelectedIndexChanged 事件),但如果我可以关闭 whereClause 的列,那就完美了。
有谁对如何让它发挥作用有更好的想法吗?
解决方案
我只熟悉此数据网格的 WPF 版本,但请尝试以下操作:
<data:DataGridTextColumn CanUserSort="False" Header="First Name" Binding="{Binding FirstName}" />
在您不想排序的每一列上添加 CanUserSort="False" 属性。
其他提示
试一试:
dataGridView1.Columns[*Numberofthecolumnyoudontwantsorted*].SortMode
= DataGridViewColumnSortMode.NotSortable;
@BKimmel - 它不会工作,因为这是在 silverlight 中,并且显然网格列的那部分尚未处理。在页面的 XAML 中,它不会在列上显示 sortmode 的属性,并且在后端代码中,它无法识别它,因为它不是 Web 控件,而是 silverlight 控件。
不过谢谢。还有谁?
不隶属于 StackOverflow