C# 枚举和单选按钮
如何判断是否选中了单选按钮并在开关中执行了操作?这是我代码的一部分: 这是我班的Person.csC# 枚举和单选按钮,c#,winforms,enums,C#,Winforms,Enums,如何判断是否选中了单选按钮并在开关中执行了操作?这是我代码的一部分: 这是我班的Person.cs public enum TypeTimer { Unlimited, Countdown, Limited} 这是我的开关,我将把功能放在这里 public Person(TypeTimer s1) { switch (s1) { case TypeTimer.Unlimited:
public enum TypeTimer { Unlimited, Countdown, Limited}
这是我的开关,我将把功能放在这里
public Person(TypeTimer s1)
{
switch (s1)
{
case TypeTimer.Unlimited:
(code here)
break;
case TypeTimer.Countdown:
(code here)
break;
case TypeTimer.Limited:
(code here)
break;
default:
break;
}
}
如何判断checked==true是否等于enum limited或unlimited或countdown
这是Form.cs
private void button1_Click(object sender, EventArgs e)
{
if (rbtnNormalTimer.Checked == true)
{
}
else if(rbtnCountDown.Checked == true)
{
}
else if(rbtnLimited.Checked == true)
{
}
}
例如:如果选中rbtnLimited,我想执行TypeTimer.Limited中开关内部的代码
有人能帮我吗?您可以使用适当的枚举调用person方法/构造函数,如下所示:
private void button1_Click(object sender, EventArgs e)
{
if (rbtnNormalTimer.Checked == true)
{
Person(TypeTimer.Unlimited);
}
else if(rbtnCountDown.Checked == true)
{
Person(TypeTimer.Countdown);
}
else if(rbtnLimited.Checked == true)
{
Person(TypeTimer.Limited);
}
}
对于构造器,按如下方式使用:
Person person;
if (rbtnNormalTimer.Checked == true)
{
person = new Person(TypeTimer.Unlimited);
}
else if(rbtnCountDown.Checked == true)
{
person = new Person(TypeTimer.Countdown);
}
else if(rbtnLimited.Checked == true)
{
person = new Person(TypeTimer.Limited);
}
希望
public Person(TypeTimer s1)
将是Person
类的构造函数,并且您希望根据单选按钮的选择创建一个新的Person对象。以下代码将帮助您完成该工作;如果不是,则可以直接调用该方法,如Person(TypeTimer.Unlimited)
这次不要忘记在方法签名中添加有效的返回类型:
private void button1_Click(object sender, EventArgs e)
{
Person p;
if (rbtnNormalTimer.Checked)
{
p= new Person(TypeTimer.Unlimited)
}
else if (rbtnCountDown.Checked)
{
p= new Person(TypeTimer.Countdown)
}
else if (rbtnLimited.Checked)
{
p= new Person(TypeTimer.Limited)
}
// proceed with p
}
我使用控件的tag属性使其正常运行。检查一个控件后,我得到它的tag属性,并使smth类似
TypeTimer enu;
Enum.TryParse((sender as RadioButton).Tag, out enu);
Switch(enu)
{
case TypeTimer.Unlimited:
(code here)
break;
case TypeTimer.Countdown:
(code here)
break;
case TypeTimer.Limited:
(code here)
break;
default:
break;
}
不知道你在问什么。你把一切都准备好了。在每种情况下,只需将相应的枚举值发送给类构造函数。Person不是函数!!如何调用构造函数?@dotNET忘记了新的关键字。。。如果你试着快速处理itError,事情会变得一团糟:Person是一个“类型”,但像一个“变量”一样使用,并且“TypeTimer”在当前上下文中不存在,这就是我从你的code@M再试一次,我忘记了
new
关键字,对于TypeTimer
,您应该在自己的枚举名称空间中添加一个using