WPF扩展工具包PropertyGrid-默认情况下展开所有属性
本文关键字:属性 情况下 扩展 工具包 PropertyGrid- 默认 WPF | 更新日期: 2023-09-27 18:20:50
我正在使用Xceed WPF扩展工具包中的PropertyGrid。有没有一种方法可以在默认情况下扩展所有属性?事实上,我永远不需要它们是"未扩展的",所以如果"未扩展"(有没有这个词,BTW?)可以被禁用,那就更好了。
如果你仍在寻找实现这一点的方法,我只是自己想好了。
private void PropertyGrid_SelectedObjectChanged(object sender, RoutedPropertyChangedEventArgs<object> e)
{
var grid = sender as PropertyGrid;
foreach (PropertyItem prop in grid.Properties)
{
if (prop.IsExpandable) //Only expand things marked as Expandable, otherwise it will expand everything possible, such as strings, which you probably don't want.
{
prop.IsExpanded = true; //This will expand the property.
prop.IsExpandable = false; //This will remove the ability to toggle the expanded state.
}
}
}
如果您设置IsCategorized="False",您将看到默认情况下扩展的所有属性:
<xceed:PropertyGrid IsCategorized="False" SelectedObject="{Binding}"/>
也可以指定
ShowPreview="False" ShowSearchBox="False" ShowSortOptions="False"
ShowSummary="False" ShowTitle="False" ShowAdvancedOptions="False"
禁用主属性编辑器网格以外的所有其他部分。
_propertyGrid.ExpandAllProperties();