Silverlight DataGrid控件 - 如何停止对列的排序?

时间:2008-09-17 20:56:38

标签: vb.net silverlight web-services xaml datagrid

从昨天开始继续我的问题,我从这个issue获得了Silverlight数据网格 现在,在使用大量数据对列进行排序时会导致堆栈溢出错误(类似于包含SQL语句的where子句的文本列)。排序时,它将触发datagrid的SelectedIndexChanged事件,然后仍尝试stort。如果再次单击标题,则会发生堆栈溢出。

有没有人知道如何停止对此列的此控件进行排序?所有其他列排序都很好(但仍然是禁止使用SelectedIndexChanged事件),但如果我可以关闭whereClause的列,它将是完美的。

有没有人对如何使其发挥作用有更好的了解?

3 个答案:

答案 0 :(得分:2)

我只熟悉这个数据网格的WPF版本,但试试这个:

<data:DataGridTextColumn CanUserSort="False" Header="First Name" Binding="{Binding FirstName}" />

在您不希望排序的每列上添加CanUserSort =“False”属性。

答案 1 :(得分:0)

试一试:

dataGridView1.Columns[*Numberofthecolumnyoudontwantsorted*].SortMode
= DataGridViewColumnSortMode.NotSortable;

答案 2 :(得分:0)

@BKimmel - 它不起作用,因为这是在silverlight中,显然网格列的一部分还没有被处理过。在页面的XAML中,它没有显示列上的sortmode属性,并且在后端代码中,它不识别它,因为它不是Web控件,它是一个silverlight控件。

谢谢。还有其他人吗?