C# Будет ли "WindowState.ToString" меняться между культурами
Возьмите следующий код для примера;
if (Convert.ToString(frm.WindowState) == "Minimized")
Layout.WindowState = "Maximized";
else
Layout.WindowState = Convert.ToString(frm.WindowState);
Мы анализируем строковое определение состояния окна, т.е. "свернуто".
Будет ли это описание строки меняться между культурами?
Наконец, хотя в этом коде есть ли Enum, который мы могли бы использовать для проверки состояния окна?
Можем ли мы провести рефакторинг этого сегмента кода?
3 ответа
WindowState
значение является перечислением - System.Windows.Forms.FormWindowState
, Просто сравните с константами перечисления, пропустите ToString()
безумие.
Он не должен меняться в зависимости от культуры, поскольку он просто превращает имя Enum в строку. Имя enum не меняется, если вы используете другую культуру.Net/Windows/IDE, поэтому оно останется таким, каким оно было изначально написано.
WindowState - это перечисление.
Я предлагаю использовать хорошую IDE (Visual Studio fe), которая сделает подобные детали очевидными.