2010-09-05 56 views
0

所以我有两个组框,什么,我想是让来自他们的选择的单选按钮值。如何获得文本值出单选按钮列表

如果它只是一个文本框,你可以去:

thisValue = textbox1.text 

但我不知道该怎么做了一个单选按钮

+0

你究竟在干什么课? – 2010-09-05 20:34:57

回答

2

来获取值(假设你想要的,而不是文本)出单选按钮的,你得到的Checked属性:

bool isChecked = radioButton1.Checked; 

还有为t之间不存在基于代码的关系他单选按钮在GroupBox(除了单选按钮的行为方式是一次只检查同一个容器中的一个单选按钮);你的代码将需要跟踪哪一个被检查。

要做到这一点最简单的方法也许是做一团中的所有触发了CheckedChanged事件相同的事件侦听器内的单选按钮。如果您可以检查sender参数以跟踪当前选择哪个参数。

例子:

private enum SearchMode 
{ 
    TitleOnly, 
    TitleAndBody, 
    SomeOtherWay 
} 
private SearchMode _selectedSearchMode; 
private void SearchModeRadioButtons_CheckedChanged(object sender, EventArgs e) 
{ 
    RadioButton rb = (RadioButton)sender; 
    if (rb.Checked) 
    { 
     if (rb == _radioButtonTitleOnly) 
     { 
      _selectedSearchMode = SearchMode.TitleOnly; 
     } 
     else if (rb == _radioButtonTitleAndBody) 
     { 
      _selectedSearchMode = SearchMode.TitleAndBody; 
     } 
     else 
     { 
      // and so on 
     } 
    }    
} 
0

这是WindowsForms LINQ的例子 如果它不完全工作,你会得到的想法

RadioButton rb = null; 
RadioButton checkedRB = groupBox1.Controls.FirstOrDefault(
c => (rb = c as RadioButton) != null && rb.Checked) as RadioButton; 

if (checkedRB != null) 

{ 
this.Text = checkedRB.Text; 
} 
0

参考,以相同的单击事件触发

private void rb_Click(object sender, EventArgs e) { 
    thisValue = ((RadioButton)sender).Text; 
} 
相关问题