gpt4 book ai didi

c# - PropertyGrid 在 UITypeEditor 或 TypeConverter 的帮助下编辑后执行操作以更改其他属性

转载 作者:行者123 更新时间:2023-11-30 18:39:15 25 4
gpt4 key购买 nike

我有一个具有一些属性的类。更改其中一个后,我想使用react并更改另一个属性。此操作应由 UITypeEditor 或 TypeConverter 完成,而不是由类本身的事件完成。

我不想使用 INotifyPropertyChanged 并在类本身中处理它。

未测试示例代码

public class MyEditor : UITypeEditor
{
public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value)
{
// change the other property
}
}

[Editor(typeof(MyEditor), typeof(UITypeEditor))]
class MyClass
{
public string String1 { get; set; }
public string String2 { get; set; }
public string String3 { get; set; }
}

这个 EditValue 只有一个功能,可以用一个小按钮显示编辑器模态……但我想要一个带有 AfterChange 左右的普通文本框。

最佳答案

看看 NotifyParentPropertyAttribute在 MSDN 上。
引用的示例显示 BorderAppearance 类中属性的更改如何触发 BorderAppearanceConverter。在您的情况下,您需要一个对事件使用react的 MyClassConverter,并将 NotifyParentPropertyAttribute 添加到您的三个属性中的每一个。

关于c# - PropertyGrid 在 UITypeEditor 或 TypeConverter 的帮助下编辑后执行操作以更改其他属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10275673/

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