大家好,我是从C#(旧的Delphi开发人员)开始的,我在新TextBox上增加一些代码有些困难,这是我想要做的一个简单示例
文本框的组件TextBoxX
public class TextBoxX : TextBox
{
public TextBoxX()
{
}
public X XX { get; set; }
}
第二类,只有两个要在组件上显示的int字段
public class X
{
public int XXX { get; set; }
public int YYY { get; set; }
}
我正在寻找类似红色框上的结果
我使用“ X:组件”进行了一些测试,但它们附带了一些我不需要的额外字段。
感谢您的帮助。
答案 0 :(得分:1)
您需要用XXX
装饰TypeConverter
类:
[TypeConverter(typeof(ExpandableObjectConverter))]
public class XXX
{
public int YYY { get; set; }
public int ZZZ { get; set; }
public override string ToString()
{
return "X1"; //Or whatever you want shown when the property is collapsed
}
}
请参阅Microsoft文档上的ExpandableObjectConverter。
答案 1 :(得分:0)
我使用“ new X(this)”解决了您需要的主类问题
public class TextBoxX : TextBox
{
private X _valor;
public X Field
{
get
{
if (_valor == null)
{
_valor = new X();
}
return _valor;
}
}
}
和孩子们
[TypeConverter(typeof(ExpandableObjectConverter))]
public class X
{
public int XXX { get; set; }
public int YYY { get; set; }
public override string ToString()
{
return "X1"; //Or whatever you want shown when the property is collapsed
}
}
感谢我的帮助