识别使用枚举作为值来检查哪个单选按钮,winforms

pan*_*njo 2 .net c# winforms

我正在努力winforms.在winform内部,我有groupbox哪个包裹3 radio buttons.我使用设计视图和内部构造函数添加它们我将每个按钮标记为相应的枚举值

public MyApp()
{
   radioBtnBasic.Tag = UserChoiceEnum.Basic;
   radioBtnLite.Tag = UserChoiceEnum.Lite;
   radioBtnStandard.Tag = UserChoiceEnum.Standard;
}
Run Code Online (Sandbox Code Playgroud)

在我的课程中,我有类型的属性属性,Dictionary它使用这个枚举作为键,所以当用户点击winform按钮识别哪个单选按钮被选中并分配给该字典时,我想要.

我已经找到了如何获取选中的选项

var choice = grpBox1.Controls.OfType<RadioButton>().FirstOrDefault(x => x.Checked);
Run Code Online (Sandbox Code Playgroud)

我是否需要使用switch语句来识别哪个Enum被检查或者有更好的方法?

Tom*_*tom 6

你得到UserChoiceEnum:

RadioButton choice = grpBox1.Controls.OfType<RadioButton>().FirstOrDefault(x => x.Checked);
UserChoiceEnum userChoice = (UserChoiceEnum)choice.Tag;
Run Code Online (Sandbox Code Playgroud)