如果Silverlight 3数据网格包含已关闭的组,则在通过单击列标题启动行排序时,将打开所有已关闭的组以显示其内容。有没有办法阻止这种情况发生?
我正在使用Silverlight 3和2009年7月的工具包。
答案 0 :(得分:1)
我为DataGrid写了一个扩展方法:
public static void CollapseAllGroups(this DataGrid dataGrid) {
dataGrid.Dispatcher.BeginInvoke(delegate {
var cv = dataGrid.ItemsSource as ICollectionView;
if (cv != null && cv.Groups != null) {
foreach (CollectionViewGroup groupname in cv.Groups) {
dataGrid.CollapseRowGroup(groupname, true);
}
}
});
}
在我的情况下,我将它挂钩到底层的DomainDataSource的DataLoaded事件。