单选按钮从另一个返回 false class
Radio button returning false from another class
大家新年快乐!
我在将布尔值从表单发送到 class 时遇到问题,其中通过代码更改表单。
所以我有一个单选按钮 (rb2),单击它会启动一个线程。但是,我需要的是 return true 或 false 的 radioButton class.
public class Airport : Form
{
public RadioButon rb2;
public void rb2_Checked(Object sender, EventArgs e)
{
if (rb2.Checked == true)
{
thread3 = new Thread(new ThreadStart(p2.Start2));
thread3.Start();
}
}
}
下面是 class 需要从机场 class 获取 true 或 false 的值。但是当我打印出来 (r) 时,它总是打印出 false。我已经尝试了一些东西,但它们还没有奏效。
class Hubs
{
public void Start2
{
Airport ap = new Airport();
RadioButton r = ap.rb2;
Console.WriteLine(r);
if(r.Checked == true)
{
Console.WriteLine("Check r");
}
}
}
任何人有任何想法可能会导致新的 radioButton 在我的新 class 中不断打印 false 吗?
考虑在您的方法中添加一个参数,该参数接收一个机场实例 class:
class Hubs
{
public void Start2(object airport)
{
var ap = airport as Airport;
if (ap == null) return;
RadioButton r = ap.rb2;
Console.WriteLine(r);
if (r != null && r.Checked)
{
Console.WriteLine("Check r");
}
}
}
然后将 Airport 的实例(使用 this
)传递给调用它的方法:
public class Airport : Form
{
public RadioButon rb2;
public void rb2_Checked(Object sender, EventArgs e)
{
if (rb2 != null && rb2.Checked)
{
var x = new Hubs();
var thread3 = new Thread(x.Start2);
thread3.Start(this);
}
}
}
大家新年快乐!
我在将布尔值从表单发送到 class 时遇到问题,其中通过代码更改表单。
所以我有一个单选按钮 (rb2),单击它会启动一个线程。但是,我需要的是 return true 或 false 的 radioButton class.
public class Airport : Form
{
public RadioButon rb2;
public void rb2_Checked(Object sender, EventArgs e)
{
if (rb2.Checked == true)
{
thread3 = new Thread(new ThreadStart(p2.Start2));
thread3.Start();
}
}
}
下面是 class 需要从机场 class 获取 true 或 false 的值。但是当我打印出来 (r) 时,它总是打印出 false。我已经尝试了一些东西,但它们还没有奏效。
class Hubs
{
public void Start2
{
Airport ap = new Airport();
RadioButton r = ap.rb2;
Console.WriteLine(r);
if(r.Checked == true)
{
Console.WriteLine("Check r");
}
}
}
任何人有任何想法可能会导致新的 radioButton 在我的新 class 中不断打印 false 吗?
考虑在您的方法中添加一个参数,该参数接收一个机场实例 class:
class Hubs
{
public void Start2(object airport)
{
var ap = airport as Airport;
if (ap == null) return;
RadioButton r = ap.rb2;
Console.WriteLine(r);
if (r != null && r.Checked)
{
Console.WriteLine("Check r");
}
}
}
然后将 Airport 的实例(使用 this
)传递给调用它的方法:
public class Airport : Form
{
public RadioButon rb2;
public void rb2_Checked(Object sender, EventArgs e)
{
if (rb2 != null && rb2.Checked)
{
var x = new Hubs();
var thread3 = new Thread(x.Start2);
thread3.Start(this);
}
}
}