Silverlight DataGrid控件-如何停止对列的排序?
时间:2020-03-05 19:00:02 来源:igfitidea点击:
从昨天开始继续存在我的问题,我从该问题获得的Silverlight数据网格
现在,在对包含大量数据的列进行排序时(例如,包含SQL语句的where子句的text列),会导致Stack Overflow错误。排序时,它将为datagrid触发SelectedIndexChanged事件,然后仍然尝试进行扭曲。如果再次单击标题,则会发生堆栈溢出。
是否有人对如何停止此控件在列上的排序有任何想法?所有其他列排序都很好(但仍然会触发该SelectedIndexChanged事件),但是如果我可以在whereClause处关闭该列,那将是完美的。
有谁在如何使它起作用方面有更好的主意吗?
解决方案
回答
试一下:
dataGridView1.Columns[*Numberofthecolumnyoudontwantsorted*].SortMode = DataGridViewColumnSortMode.NotSortable;
回答
@BKimmel它将无法正常工作,因为它处于Silverlight状态,并且显然尚未处理部分网格列。在页面的XAML中,列上没有显示sortmode属性,而在后端代码中,它不是Web控件,而是Silverlight控件,因此无法识别它。
不过谢谢还有谁?
回答
我只熟悉此数据网格的WPF版本,但是请尝试以下操作:
<data:DataGridTextColumn CanUserSort="False" Header="First Name" Binding="{Binding FirstName}" />
在我们不想排序的每一列上添加CanUserSort =" False"属性。