2012-06-12 79 views
0

我使用AutoPopulateColumns系统在DataGrid上显示我的结构。是否有任何属性的属性在ColumnChooser窗口上显示属性,而不是在网格上?DevExpress DataGrid的ColumnChooser

谢谢。

+0

你想显示哪个属性..问题不是很清楚..请详细说明.. –

+0

我需要显示我的类的属性不在网格上,但在ColumnChooser窗体上,我使用AutoPopulateColumns,所以有没有任何属性如“DisplayName”或“Browsable”为此? –

回答

0

好吧,我找不到这样的默认属性,所以我创建了自己的空属性,称之为“ShowInColumnChooserAttribute”。

马克所有属性,我并不需要在DataGrid后,但需要在ColumnChooser与此属性

而且在DataGrid的事件“ColumnsPopulated”做了下:

 var hiddenList = new List<string>(); 
     var r = dataTable.ItemsSource.GetType().GetGenericArguments()[0]; 
     foreach (var prop in r.GetProperties()) 
      if (prop.GetCustomAttributes(typeof(ShowInColumnChooserAttribute), true).Length > 0) 
       hiddenList.Add(prop.Name); 
     foreach (var column in ((DevExpress.Xpf.Grid.GridControl)sender).Columns) 
       column.Visible = !hiddenList.Contains(column.FieldName); 

我认为这是非常容易和美丽的解决方案!希望这会有所帮助!

相关问题