public string DetailRtf
{
get { return Detail.Rtf; }
set { Detail.Rtf = value; }
} public override string Text
{
get { return Detail.Text; }
set { Detail.Text = value; }
}控件中包含上述代码,可是生成的控件在设计状况下,没有Text属性,代码修改成 public string Text2
{
get { return Detail.Text; }
set { Detail.Text = value; }
}就可以看见Text2属性,如果不用override,会生成警告将隐藏继承的成员“System.Windows.Forms.UserControl.Text”。若要使当前成员重写该实现,请添加关键字 override。否则,添加关键字 new。我用new试过也是不行,请问要怎样才能让我自定义控件在设计状况下属性中能有Text属性?另外想请问我希望在设计窗体上加入自定义控件,自定义控件可以显示缺省控件名,类似Label控件,能按次序显示MyControl1,MyControl2,... ...这样要怎么实现?我在MyControl_Load中获取this.Name是固定的控件类名MyControl
{
get { return Detail.Rtf; }
set { Detail.Rtf = value; }
} public override string Text
{
get { return Detail.Text; }
set { Detail.Text = value; }
}控件中包含上述代码,可是生成的控件在设计状况下,没有Text属性,代码修改成 public string Text2
{
get { return Detail.Text; }
set { Detail.Text = value; }
}就可以看见Text2属性,如果不用override,会生成警告将隐藏继承的成员“System.Windows.Forms.UserControl.Text”。若要使当前成员重写该实现,请添加关键字 override。否则,添加关键字 new。我用new试过也是不行,请问要怎样才能让我自定义控件在设计状况下属性中能有Text属性?另外想请问我希望在设计窗体上加入自定义控件,自定义控件可以显示缺省控件名,类似Label控件,能按次序显示MyControl1,MyControl2,... ...这样要怎么实现?我在MyControl_Load中获取this.Name是固定的控件类名MyControl
public new string Text
{
get { return Detail.Text; }
set { Detail.Text = value; }
}
public class TextBoxEx : RichTextBox
现在如果属性名不用Text,其实就可以,只是想搞清楚原因是什么,要怎么解决!
using System.Windows.Forms;namespace WindowsFormsApplication6
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show(textBoxEx1.Text);
}
} public class TextBoxEx : UserControl
{
private RichTextBox Detail;
public TextBoxEx()
{
Detail = new RichTextBox();
this.Controls.Add(Detail);
} public string DetailRtf
{
get { return Detail.Rtf; }
set { Detail.Rtf = value; }
} public new string Text
{
get { return Detail.Text; }
set { Detail.Text = value; }
}
}
}
哪里不行啊
[Browsable(false)]
public override string Text
{
get { return Detail.Text; }
set { Detail.Text = value; }
}
另外一个问题,就是怎么按次序显示MyControl1,MyControl2,... ...应该怎么设置?
我希望是自动生成的控件名显示在GroupBox的Text的地方,但现在的状况是自动显示在我的RichTextBox里面