PropertyGrid:编辑多个对象时合并多个动态属性

发布于 2024-08-26 23:25:21 字数 333 浏览 7 评论 0原文

假设我有一个 A 类和一个 B 类。我想使用 .NET PropertyGrid 同时编辑 A 和 B 的多个实例。所需的行为是显示属性的交集。

如果 A 和 B 具有静态(写在源代码中)属性,则一切正常。选择 A 和 B 实例将仅显示属性的交集。

但是,如果 A 和 B 也具有动态属性(通过 GetProperties() 方法作为 PropertyDescriptorCollection 返回),则行为是错误的。当选择多个对象时,我只会看到那些静态属性,而不会看到动态属性。

当我仅选择一个实例时,我可以看到所有属性(静态和动态)。

有人有什么想法吗?我在互联网上找不到任何东西。

Let's say I have a class A and a class B. I would like to edit using .NET PropertyGrid multiple instances of A and B simultaneously. The desired behavior would be to have the intersection of properties displayed.

If A and B have static (written in the source code) properties everything works fine. Selecting A and B instances will only display the intersection of properties.

However, if A and B also have dynamic properties (returned as a PropertyDescriptorCollection through the GetProperties() method) the behavior is wrong. When selecting multiple objects I will only see those static properties and none of the dynamic ones.

When I select only one instance I can see all properties (static and dynamic).

Anybody any ideas? I couldn't find anything on the internet.

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

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

发布评论

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

评论(1

空城之時有危險 2024-09-02 23:25:21

您是否在属性上使用 MergablePropertyAttribute?

Are you using the MergablePropertyAttribute on the properties?

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