以下面的代码为例;
if (Convert.ToString(frm.WindowState) == "Minimized")
Layout.WindowState = "Maximized";
else
Layout.WindowState = Convert.ToString(frm.WindowState);
我们正在分析窗口状态的字符串定义,即“Minimized”。
这种字符串描述会在不同文化之间发生变化吗?
最后,在这段代码中,是否有一个Enum我们可以使用它来检查窗口状态?
我们可以重构这段代码吗?
答案 0 :(得分:8)
WindowState
值 是枚举 - System.Windows.Forms.FormWindowState
。只需与枚举常量进行比较,跳过ToString()
疯狂。
答案 1 :(得分:1)
它不应该在整个文化中发生变化,因为它只是将Enum名称转换为字符串。当您使用.Net / Windows / IDE的不同文化时,枚举名称不会更改,因此它将保持原来的状态。
答案 2 :(得分:0)