Я встречаюсь с ситуацией, где я использую сопоставление с образцом для определения свойства видимости столбца. System.Windows.Visibility
имеет два поля, Visibility.Visible
и Visibility.Collapsed
. Может enyone говорить мне почему следующий код:
let colItem = myDataGrid.Columns.Item 1
chkBox.IsChecked <-
match colItem.Visibility with
| Visibility.Visible -> new Nullable<bool>(true)
| Visibility.Collapsed -> new Nullable<bool>(false)
генерирует предупреждение follwing:
Неполный шаблон соответствует по этому выражению. Например, значение '2uy' может указать на случай, не покрытый шаблоном (шаблонами).
Теоретически значение типа Visibility может быть чем-то другим, кроме Visible или Collapsed, потому что перечисления .net допускают любое значение базового целочисленного типа в качестве значения для типа перечисления (чтобы разрешить такие вещи, как перечисления OR).