gpt4 book ai didi

c# - 从 PropertyGrid 集合属性中删除 "..."按钮

转载 作者:行者123 更新时间:2023-12-03 21:56:26 25 4
gpt4 key购买 nike

我正在尝试更改集合属性在 Winforms PropertyGrid 中的显示方式。

而不是拥有

MyList | (Collection) [...]

并且必须按下按钮才能显示 CollectionEditor。我正在将列表扩展为 ExpandableObjectConverter。但我仍然得到 [...] 按钮。所以现在它看起来像这样。

[+] MyList | (2 Items) [...]
Item 1 | Value
Item 2 | Value

最后,我想将此 [...] 替换为添加按钮。我只是不知道从哪里开始。如果我没理解错的话,CollectionEditor 就是我按下 [...] 时显示的窗口。那么我需要覆盖什么对象来删除和添加我自己的按钮。

谢谢

最佳答案

CollectionEditor 继承一个新类并覆盖 GetEditStyle 以返回 None 以防止显示“...”按钮。

同样不幸的是,您无法使用标准属性网格添加 Add 按钮。您可以选择“...”、向下箭头或无按钮。

class CustomEditor : CollectionEditor
{
public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context)
{
return UITypeEditorEditStyle.None;
}
}

您可以使用以下属性将这个新编辑器应用到属性中:

[EditorAttribute(typeof(CustomEditor), typeof(UITypeEditor))]

关于c# - 从 PropertyGrid 集合属性中删除 "..."按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13870268/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com