我有main
表格。在这上面有一个按钮。当我单击此按钮时,将显示一个新表单,如下所示:
private void buLogOptions_Click(object sender, EventArgs e)
{
logOptionsForm logForm = new logOptionsForm();
logForm.ShowDialog();
}
在这个logForm
中,我有一个'nud'和一个'Done_button'。设置了nud值后,按“完成按钮”。这将关闭此logForm
,我回到main
表单。我想要的是获取我在主窗体中的logForm中设置的nud的值
答案 0 :(得分:1)
您可以在logOptionsForm
中拥有一个公共的get-only属性public int Nud { get; private set;}
然后设置Nud属性,并在“Done”按钮的事件处理程序中设置表格的this.DialogResult属性,如此
this.DialogResult = System.Windows.Forms.DialogResult.OK;
这样当表单关闭时你可以这样做
private void buLogOptions_Click(object sender, EventArgs e)
{
logOptionsForm logForm = new logOptionsForm();
logForm.ShowDialog();
if (logForm.DialogResult == System.Windows.Forms.DialogResult.OK)
{
logForm.Nud //do whatever you want with Nud
}
}
Nud属性是get-only,以避免将其设置在logOptionForm实例之外。
答案 1 :(得分:0)
如果'nud'是公开的,您可以访问它:
private void buLogOptions_Click(object sender, EventArgs e)
{
logOptionsForm logForm = new logOptionsForm();
logForm.ShowDialog();
var resultNud = logForm.nud;
}
答案 2 :(得分:0)
你可以制作一个公共变量吗?
//This is on LogForm
public bool pressed;
//This is on your main from
bool wasPressed = LogForm.pressed
它不一定是字符串,但它适用于任何变量。
答案 3 :(得分:0)
您必须编写接受参数的主窗体构造函数。
public MainForm(string Value){
}
当你点击当时的完成按钮时
将值传递给MainForm对象。
您可以在MainForm构造函数中获取该值。