我正在尝试为项目创建前缀文本值。我正在为此使用开关盒。当用户选择相关的单选按钮时,我们应该给出前缀值。
在“switch()”之后应该给什么
来自用户选择的值是一个 bool 值。 输出为字符串。
任何帮助..
public string officePostfix()
{
string postfix = null;
switch (...)
{
case SheetMgrForm.Goldcoast = true:
postfix = "QLD";
break;
case SheetMgrForm.Melbourne = true:
postfix = "MEL";
break;
case SheetMgrForm.Sydney = true:
postfix = "SYD";
break;
case SheetMgrForm.Brisbane = true:
postfix = "BIS";
break;
}
return postfix;
}
最佳答案
switch
不是这样工作的。您不能在每个 case
中放置任意 bool 表达式(假设您的意思是 ==
而不是 =
,顺便说一句)。
您需要使用一组 if-else
block ,例如:
if (SheetMgrForm.Goldcoast) {
postfix = "QLD";
} else if (SheetMgrForm.Melbourne) {
postfix = "MEL";
} else if ......
但是,看起来您的设计需要一些返工。拥有所有这些单独的 bool 值很笨拙。
关于c# - 带 bool 值的开关盒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16662631/