C# 通过3个类传递数据,从1中选择值并输入文本框';那是另一个
好的,我从组合框中选择的文本中获取信息,并将其传递给另一个表单上的文本框 我有一个叫做变量的类C# 通过3个类传递数据,从1中选择值并输入文本框';那是另一个,c#,winforms,C#,Winforms,好的,我从组合框中选择的文本中获取信息,并将其传递给另一个表单上的文本框 我有一个叫做变量的类 public class variables { public string Design { get; set; } public string Classnum { get; set; } } 从组合框中的用户选择中接收信息 这是另一个叫做“家”的班级 private void cbfanclass_SelectedIndexChanged(object sender, Even
public class variables
{
public string Design { get; set; }
public string Classnum { get; set; }
}
从组合框中的用户选择中接收信息
这是另一个叫做“家”的班级
private void cbfanclass_SelectedIndexChanged(object sender, EventArgs e)
{
var.Design = cbdesigntype.Text.ToString();
}
当我使用断点时,我看到var.Design保存了正确的数据
当我把它送到第三节课时,我的问题就开始了
public partial class DesignPar : Form
{
public variables var = new variables();
public DesignPar()
{
InitializeComponent();
}
private void DesignPar_Load(object sender, EventArgs e)
{
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
textBox2.Text = var.Design;
}
private void textBox2_TextChanged(object sender, EventArgs e)
{
}
}
我将在textbox1中输入数据以激活事件,但textbox 2中没有显示任何内容,使用break显示var.design//textbox 2只是“不是null而是”
所以我的问题是,很明显,我在某个地方传递的数据是错误的,这是因为您正在创建一个新的variables类实例 必须像这样在DesignPar()中创建私有属性
private string design {get; set;}
并添加一个带参数的重载构造函数
并将参数从类home传递给该构造函数
像这样
DesignPar(cbdesigntype.Text.ToString())
并在重载构造函数中指定值
DesignPar(string design)
{
this.design = design;
}
希望这有助于假定某种按钮单击会启动DesignPar表单
private void button1_Click(object sender, EventArgs e)
{
using (DesignPar form = new DesignPar())
{
form.var = var;
form.ShowDialog();
var = form.var;
}
}
现在在设计部
public partial class DesignPar : Form
{
public variables var = null;
private void textBox1_TextChanged(object sender, EventArgs e)
{
if (var == null)
var = new variables();
textBox2.Text = var.Design;
}
}
让我看看您在哪里实例化了
DesignPar
表单。谢谢,请与我一起分享,但是我应该把DesignPar(cbdesigntype.Text.ToString())放在哪里?看看这个链接,它会对您有所帮助