如何以其他形式访问单选按钮?

时间:2011-04-28 22:32:27

标签: c# .net

我想查看是否以另一种形式检查了notch50hzbutton,例如:if (SettingsForm.notch50hzbutton.Checked == true) .....我该怎么做?

namespace ClassLibrary1
 {
    using GraficDisplay;
    using GraphLib;
    using PrecisionTimer;


    public partial class SettingsForm : Form
    {

        public SettingsForm()
        {
            InitializeComponent();
            notch50hzbutton.Checked = false;
            notch60hzbutton.Checked = true;

        }

        private void notch50Hz_Checked(object sender, EventArgs e)
        {
            notch50hzbutton.Checked = true;
        }

        private void notch60Hz_Checked(object sender, EventArgs e)
        {
            notch60hzbutton.Checked = true;
        }
    }
  }

4 个答案:

答案 0 :(得分:1)

public bool Notch50HzIsChecked 
{
   get { return notch50hzbutton.Checked; }
   set { notch50hzbutton.Checked = value; }
}

然后,您可以像在课堂外的常规财产一样访问它。

答案 1 :(得分:0)

在表单上创建一个公共属性并传递您想要从外部访问的值?

答案 2 :(得分:0)

在不暴露控件本身的情况下检查控件是否被检查的一种方法是添加一个公共方法(或只有getter的公共属性),这样做会SettingsForm

public bool IsNotch50hzbuttonChecked()
{
    return notch50hzbutton.Checked;
}

然后你可以检查

if (settingsFormInstance.IsNotch50hzbutton())
{
 ...
}

答案 3 :(得分:0)

我会创建一个外部可访问的相应公共财产:

public partial class SettingsForm : Form
{
   public bool Is60Hz {get; private set;}
   ...

   private void notch50Hz_Checked(object sender, EventArgs e)
   {
        notch50hzbutton.Checked = true;
        Is60Hz = false;
   }

   private void notch60Hz_Checked(object sender, EventArgs e)
   {
        notch60hzbutton.Checked = true;
        Is60Hz = true;
   }