类继承有问题
我创建了一个包含标签1的表单1。我还创建了一个class1文件。当Form1加载时,startFunction方法将由Form1_Load事件触发。startFunction是一个继承的方法。namespace MyNameSpace
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load (object sender, EventArgs e)
{
StartMethod();
}
public void startMethod()
{
Class1 ClasInherited = new Class1();
ClasInherited.ChangeLabelText();
}
.
.
Class1.cs文件包含ChangeLabelText()方法。
public partial class Class1
{
Form1 form1 = new YuzeyAnaliz();
public void ChangeLabelText()
{
form1.label5.Text = "Text changed";
}
.
.
但是label5文本不会改变。我错过了一些东西。
**** Hidden Message ***** 您正在将另一个窗体“嵌入”到Class1类中,而不是继承Class1。Form1继承自窗体
Class1不继承任何内容,但它确实在其内部创建了一个Form1(封装)
类似的操作应该可以:
公共类Form1:form
{
public Form1()//构造函数,如果需要,可以在这里初始化所有内容,而不是_Load。
{
初始化组件()
//您也可以在此处更改文本。
}
私有void Form1_Load(对象发送者,事件参数e)
{
<div>//_Load适用于加载外部数据,例如在加载表单时加载保存的设置。</div>
StartMethod()
//或者只在这里更改文本,不需要StartMethod():
//this.lable5.Text=“文本已更改”
}
公共void StartMethod()
{
this.lable5.Text=“文本已更改”
}
}
页:
[1]