我做了一個UserControl,該屬性的類型爲RotateFlipType
,該控件在另一個UserControl中用於相應地設置屬性。Visual Studio屬性沒有顯示所有枚舉選項
東西是根據RotateFlipType MSDN Documentation Enum有16個字段,但VS屬性窗口只顯示14,Rotate180FlipNone
和RotateNoneFlipX
丟失。我需要使用Rotate180FlipNone
。通過代碼設置工作正常,但我真的不想這樣做。
我做了一個UserControl,該屬性的類型爲RotateFlipType
,該控件在另一個UserControl中用於相應地設置屬性。Visual Studio屬性沒有顯示所有枚舉選項
東西是根據RotateFlipType MSDN Documentation Enum有16個字段,但VS屬性窗口只顯示14,Rotate180FlipNone
和RotateNoneFlipX
丟失。我需要使用Rotate180FlipNone
。通過代碼設置工作正常,但我真的不想這樣做。
仔細查看組合框中的值。注意,它包含複製:
是的,值因失蹤。該列表仍包含16個值。
原因是RotateFlipType的枚舉值是不明確。只有8個不同的值。像RotateNoneFlipNone與Rotate180FlipXY完全相同。用一張紙試一下。或者直觀地說,有4個可能的旋轉乘以2個可能的投影(原始和翻轉)。所以出錯的是類型轉換器從枚舉的整數值(0到7之間)轉換回字符串。有兩種選擇,它只是選擇第一場比賽。
您需要編寫自己的TypeConverter以將值映射到不同的字符串,即8個可能的字符串之一。您可能想要編寫一個UITypeConverter,因此比較明顯,比如顯示轉換的位圖。