我已经创建了自己的MessageBox用我自己的枚举MessageBoxButton隐式转换:创建枚举值
public enum MyMessageBoxButton
{
OK = MessageBoxButton.OK,
OKCancel = MessageBoxButton.OKCancel,
YesNoCancel = MessageBoxButton.YesNoCancel,
YesNo = MessageBoxButton.YesNo,
NowLaterCancel = 5,
}
正如你所看到的,它就像System.Windows.MessageBoxButton 1点的值更。
对于我的课MyMessageBox,我具备的功能:
public static MessageBoxResult Show(String caption, String message, MyMessageBoxButton button, MessageBoxImage icon)
{
...
}
有没有办法来调用Show
与MessageBoxButton
和隐式转换价值为MyMessageBoxButton
?
我可以建议改变你的解决方案?你有一个列举可能的按钮组合的枚举。但是,您已为多个变体创建了单个值。这是不灵活的。我建议如下:None = 0,OK = 1,Yes = 2,No = 4,Cancel = 8,Later = 16这样你可以使用按位操作来锻炼哪些按钮可用。 1 + 8 = 9(OK,取消)2 + 4 = 6(是,否)等 –
您是否尝试过'switch/case'?你称之为*铸造*实际上是*绘图*,但你必须为这个额外的价值做些事情,对吗? – Sinatr
我试过由itsme86提供的解决方案,它的工作原理。就像我不打扰我应该使用'try/catch' –