gpt4 book ai didi

c# - 没有 xaml 的 PropertyGrid(扩展 WPF 工具包)中的多行字符串?

转载 作者:太空宇宙 更新时间:2023-11-03 22:48:32 26 4
gpt4 key购买 nike

扩展的 WPF 工具包专家,

我试图在 PropertyGrid 控件中设置一个字符串属性以接受多行。我不想使用任何 xaml 来定义编辑模板。我看到人们通过使用一些属性来使用 WinForms PropertyGrid 来做到这一点。

我更容易为绑定(bind)对象添加属性。

有人做过吗?

谢谢!

最佳答案

根据 WPF 工具包文档,您的自定义编辑控件必须实现 ITypeEditor。

示例属性

[Editor(typeof(MultilineTextBoxEditor), typeof(MultilineTextBoxEditor))]
public override string Caption
{
get
{
return caption;
}

set
{
caption = value;
OnPropertyChanged("Caption");
}
}

属性类

      public class MultilineTextBoxEditor : Xceed.Wpf.Toolkit.PropertyGrid.Editors.ITypeEditor
{
public FrameworkElement ResolveEditor(Xceed.Wpf.Toolkit.PropertyGrid.PropertyItem propertyItem)
{
System.Windows.Controls.TextBox textBox = new
System.Windows.Controls.TextBox();
textBox.AcceptsReturn = true;
//create the binding from the bound property item to the editor
var _binding = new Binding("Value"); //bind to the Value property of the PropertyItem
_binding.Source = propertyItem;
_binding.ValidatesOnExceptions = true;
_binding.ValidatesOnDataErrors = true;
_binding.Mode = propertyItem.IsReadOnly ? BindingMode.OneWay : BindingMode.TwoWay;
BindingOperations.SetBinding(textBox, System.Windows.Controls.TextBox.TextProperty, _binding);
return textBox;
}
}

关于c# - 没有 xaml 的 PropertyGrid(扩展 WPF 工具包)中的多行字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48724673/

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