我有一个Data类,我存储了某些值,如State,Initials等。
我有这些值的get / set。
这是一个Windows窗体应用程序,所以我创建了另一种类似的视图
public partial class Actions : Form
{
public Actions()
{
InitializeComponent();
}
private void Actions_Load(object sender, EventArgs e)
{
testLabel.Text = ;
}
}
所以就像测试用例一样,我想将这个标签.Text值设置为来自Data的字符串,就像
一样class Data
{
public string State { get; set; }
public string Initials { get; set; }
public Data()
{
}
}
数据是从家庭类
这样设置的 Data dat = new Data();
dat.State = "IN";
我在网上看到最好的方法是将它作为一个值传递给我,但我不确定最好的方法。
答案 0 :(得分:3)
如果您需要在表单加载事件中使用State
,那么最好的方法是传递状态值(或者您的Data
对象,如果您需要的不仅仅是状态字符串)来形成构造函数:
public Actions(string state) // or public Actions(Data data)
{
InitializeComponent();
State = state;
}
然后
private void Actions_Load(object sender, EventArgs e)
{
testLabel.Text = State;
}
答案 1 :(得分:0)
这是你想要做的吗?
public partial class Actions : Form
{
private Data myData;
public Actions()
{
myData = new Data();
myData.State = "California";
//the best state :D\\
InitializeComponent();
}
private void Actions_Load(object sender, EventArgs e)
{
testLabel.Text = myData.State;
}
}
编辑
public partial class Actions : Form
{
private Data myData;
public Actions(Data otherDataObject)
{
myData = otherDataObject;
testLabel.Text = myData.State; //here
InitializeComponent();
}
private void Actions_Load(object sender, EventArgs e)
{
testLabel.Text = myData.State; //or here
}
}
加载表单时,将数据对象传递给表单,它将在此表单的任何位置提供
答案 2 :(得分:0)
您可以向表单添加Data属性。
public class Data
{
public string State { get; set; }
}
public partial class Actions : Form
{
public Data Data { get; set; }
private void Actions_Load(object sender, EventArgs e)
{
testLabel.Text = data.State;
}
}
在其他地方,如果您已有数据对象dat
var actionForm = new Actions();
actionForm.Data = dat;
答案 3 :(得分:0)
好的,我已经弄清楚了。
我最初做的是正确的,但我需要公开我的Data类。
我的代码是:
public partial class Actions : Form
{
public Actions(Data data)
{
InitializeComponent();
testLabel.Text = data.State;
}
}
public class Data
{
public string State { get; set; }
public string Initials { get; set; }