将类别添加到 .NET PropertyGrid

发布于 2024-10-14 03:48:23 字数 83 浏览 6 评论 0原文

是否只能通过使用 CategoryAttribute 等属性注释我的数据类来将类别添加到 .NET PropertyGrid?

Is it only possible to add categories to the .NET PropertyGrid by annotating my data class with attributes like CategoryAttribute?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

不再让梦枯萎 2024-10-21 03:48:23

您可以使用 类别属性。文档指出:

通过在 CategoryAttribute 的构造函数中指定类别名称,可以为任何名称创建新类别。

例子:

[
Category("MyCategory"),
Description("Specifies something")
]
public string Something { //... }

You can use the CategoryAttribute. The documentation states:

A new category can be created for any name by specifying the name of the category in the constructor for the CategoryAttribute.

Example:

[
Category("MyCategory"),
Description("Specifies something")
]
public string Something { //... }
蓝眼泪 2024-10-21 03:48:23

使用 ICustomTypeDescriptor 和您自己的 PropertyDescriptor 类执行此操作非常简单,并且不需要涉及太多代码。

本文在 PropertyGrid 中自定义显示集合数据详细介绍了如何执行此操作。要添加类别,您还需要覆盖 PropertyDescriptor 类中的 Category 属性。

Doing this with ICustomTypeDescriptor and your own PropertyDescriptor class is quite easy and does not involve so much code.

This article Customized display of collection data in a PropertyGrid describes how to do this in detail. For adding categories you would also need to override the Category property in your PropertyDescriptor class.

归途 2024-10-21 03:48:23

听起来您试图误用 PropertyGrid 来显示多个对象。

您可以通过编写一个 CustomTypeDescriptor 类来实现这一点,该类为您想要在网格中看到的每一行返回 PropertyDescriptors 以及适当的 CategoryAttribute
这将需要大量的工作,但这是可能的。

It sounds like you're trying to mis-use the PropertyGrid to display multiple objects.

You can do that by writing a CustomTypeDescriptor class which returns PropertyDescriptors for each row you want to see in the grid, with appropriate CategoryAttributes.
This will take a substantial amount of work, but it is possible.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文