5
我遇到了使用模式匹配來確定列的可見性屬性的情況。 System.Windows.Visibility
有兩個字段,Visibility.Visible
和Visibility.Collapsed
。可以enyone告訴我爲什麼下面的代碼:與DataGridColumn.Visibility匹配的F#模式
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'可能表明模式沒有涵蓋 的情況。
對,.NET枚舉是整數類型的薄外觀,並且可以具有任何基礎整數類型的值。 – Brian 2010-06-03 17:33:12
這是正確的。例如,'(LanguagePrimitives.EnumOfValue 2uy:Visibility)'會給你一個'Visibility'類型的值,它既不是'Visible'也不''Collapsed',就像編譯器警告的那樣。 – kvb 2010-06-03 19:06:18