如何从其他类访问表单工具

时间:2016-08-09 19:07:01

标签: c#

我是编程的新手,我不能做的事情,无法从互联网上找到我遇到的问题。

我正在为练习做一个基本的Rullet游戏。

为了" Clean Coding"我想在单独的类中进行计算。

但是我无法控制我所做的计算类中的radioButton,CheckBox,TextBox等内容。

我如何访问它们?

例如,我想检查另一个班级的Rulet编号是偶数还是奇数。

// form.cs

public static int ruletNumber;

private void btnPlay_Click(object sender, EventArgs e)
{
    Random rnd = new Random ();
    ruletNumber = rnd.Next(0,37);
    Calculation.Calc();

}



//Calculation.cs
class Calculation
{
        public static void Calc()
        {
            // this is where i must see if the radioButton is Checked or Not, but it dosent see it from this Class...
            if (ruletNumber / 2 == 0 && rdbEven.Checked == true)
            {
                //some code...
            }
        }

}

1 个答案:

答案 0 :(得分:1)

将这些参数传递给您的Calc()方法,例如

ruletNumber = rnd.Next(0,37);
Calculation.Calc(ruletNumber, rdbEven.Checked); 

在这种情况下,您必须更改类中的方法签名,如下所示。此外,我认为您的条件ruletNumber / 2 == 0应为ruletNumber % 2 == 0,因为您要检查它是否为奇数/偶数

class Calculation
{
        public static void Calc(int ruletNumber, bool radiostate)
        {
        if (ruletNumber % 2 == 0 && radiostate)
        {
            //some code...
        }
    }