2017-11-24 9 views
0

RadioButton의 이름을 확인하고 싶습니다. 이름은 변수에 저장됩니다. 어떻게해야합니까? 여기 내 코드는 지금까지의 :변수로 RadioButton 확인 (이름)

string str = ""; 
str = so._settingValue; // RadioButton name 
RadioButton(str).Checked = true; 

답변

1

내가

RadioButton button = this.Controls[name]; 
// where name is a string 

예 ... 당신이 WinForm (System.Windows.Forms) 내에서이 코드를 사용한다고 가정 ... 그래서 :

String name = "MyRadioButton"; 
RadioButton button = (RadioButton)this.Controls[name]; 
Boolean isChecked = button.Checked; 

하는 경우 컨트롤이 이 다른 컨트롤 (패널 또는 이와 비슷한 것)으로 중첩 인 경우 위의 해결 방법이 작동하지 않습니다.이 중 하나를 사용해야합니다 :

String name = "MyRadioButton"; 
RadioButton button = this.Controls.Find(name, true).FirstOrDefault() as RadioButton; 
Boolean isChecked = button.Checked; 
+0

내 대답을 수정했습니다. 죄송합니다. –

+0

이 줄 : button.Checked = true; 내가 null 참조 예외 오류를 제공하고 있습니다. 이것은 또한 작동하지 않습니다 : this.button.Checked = true; –

+0

대기 대기 대기 ... 먼저, 제어 이름이 찾고있는 문자열과 일치하는지 확인해야합니다. 그런 다음 컨트롤을 중첩해서는 안됩니다 (다른 컨트롤에 삽입). 중첩 컨트롤에 대한 대답을 업데이트 할 예정입니다 ... –