C# 从其他表单中查找变量值
我正在使用WinForms。我有两张表格,表格一(主表格)和表格二。我在表格1中有两个变量,分别是C# 从其他表单中查找变量值,c#,.net,winforms,C#,.net,Winforms,我正在使用WinForms。我有两张表格,表格一(主表格)和表格二。我在表格1中有两个变量,分别是Computer\u Selected和Default\u Selected。当我单击Form1中的按钮,然后显示Form2时,我更改了其中一个变量。在表2中,我想知道变量bool的值。我该怎么做 表格1 public bool Computer_Selected; public bool Default_Selected; private void btn_Public
Computer\u Selected
和Default\u Selected
。当我单击Form1中的按钮,然后显示Form2时,我更改了其中一个变量。在表2中,我想知道变量bool的值。我该怎么做
表格1
public bool Computer_Selected;
public bool Default_Selected;
private void btn_Public_Kiosk_Click(object sender, EventArgs e)
{
Computer_Selected= true;
Default_Selected = false;
//show form2 and hide this form-(form1)...
}
表格2
private void Form1_Load(object sender, EventArgs e)
{
Console.WriteLine("Bool Value = " + Computer_Selected);
}
如果只有一个Form1实例,则可以将该变量设置为
static
public static bool Computer_Selected;
public static bool Default_Selected;
然后在Form2中,您可以访问它们:
private void Form2_Load(object sender, EventArgs e)
{
Console.WriteLine("Bool Value = " + Form1.Computer_Selected);
}
您可以在这里找到一些有用的选项:您可以尝试将值传递给第二个表单,我认为这是语法
private void btn\u Public\u Kiosk\u Click(object sender,EventArgs e){Computer\u Selected=true;Default\u Selected=false;Form2 frm2=new Form2(Computer\u Selected);frm2.Show()}
然后在Form2Public Form2中(布尔计算机选定){InitializeComponent();//根据需要使用值}
这很有效,谢谢。我不知道为什么一开始有人否决了你的问题。@taji01很可能是因为这是winforms中最基本的问题之一,你会发现它应该被标记而不是回答。@JayGould尽管这对很多人来说都是最基本的问题,但我在写之前用谷歌搜索了这个问题。我找不到任何问题这会在表单之间传递一个变量,所以我想我会问。我所能找到的只是在表单之间或人们之间传递数据,演示如何使用YouTube上的文本框来实现这一点。自从我进入web后,我已经多年没有使用winforms了,但即使如此,你不愿意创建一个不硬连接表单依赖关系的解决方案吗?为什么要使用form2知道form1吗?如果您只需要一个布尔值,为什么不通过form2构造函数传递它,或者如果form2的实例已经存在,在form2上填充一个公共变量,等等。我真的这么问,因为我觉得有这种依赖性似乎很奇怪。@taji01是“表单之间的winforms变量”的第一个结果是回答您问题的stackoverflow链接: