Phi*_*own 5 .net enums f# pattern-matching
我遇到的情况是我使用模式匹配来确定列的可见性属性. 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)
Run Code Online (Sandbox Code Playgroud)
生成以下警告:
不完整的模式匹配此表达式.例如,值"2uy"可以指示模式未涵盖的情况.
理论上,Visibility类型的值可以是Visible或Collapsed以外的值,因为.net枚举允许底层整数类型的任何值作为枚举类型的值(允许ORing枚举之类的东西).