是否可以按照声明的方式在 UI 中显示 PropertyGrid 项目?我发现它们首先按 CategoryAttribute 排序,然后按 DisplayName 属性升序排序。
我正在使用 Visual Studio 2010 Ultimate 使用 .NET 3.5 版。
编辑
该应用程序是 WPF 应用程序。
是否可以按照声明的方式在 UI 中显示 PropertyGrid 项目?我发现它们首先按 CategoryAttribute 排序,然后按 DisplayName 属性升序排序。
我正在使用 Visual Studio 2010 Ultimate 使用 .NET 3.5 版。
编辑
该应用程序是 WPF 应用程序。
从此文档:https ://docs.microsoft.com/en-US/dotnet/api/system.windows.forms.propertysort
如果您将属性设置为属性PropertySort
的 PropertySort.NoSort
排序顺序,则应遵循以下标准:属性按从 TypeDescriptor 中检索到的顺序显示。
您可以使用注释设置很多属性,其中之一是使用 System.ComponentModel.DataAnnotations.Display 属性的“显示顺序”,如下所示:
[DisplayName("Error"),Display(Order = 5)]
public string Error { get; internal set; }
你可以试试这段代码。
private void propertyGrid1_PropertySortChanged(object sender, EventArgs e)
{
if (propertyGrid1.PropertySort == PropertySort.CategorizedAlphabetical)
{
propertyGrid1.PropertySort = PropertySort.Categorized;
}
}