我在这里使用Extended WPF Toolkit消息框:http://wpftoolkit.codeplex.com/wikipage?title=MessageBox&referringTitle=Home 但是我不确定如何从MessageBox类型中删除关闭按钮 - 我根本不希望用户关闭MessageBox。
感谢您的帮助!
编辑:如果我在这样的代码中创建样式设置器:
System.Windows.Style style = new Style();
style.Setters.Add(new Setter(Xceed.Wpf.Toolkit.MessageBox.CloseButtonVisibilityProperty,
Visibility.Hidden));
messageBox.Style = style;
我得到一个例外:
类型' System.InvalidOperationException'的例外情况发生在Xceed.Wpf.Toolkit.dll中但未在用户代码中处理
其他信息:MessageBox上的关闭按钮始终可见。
答案 0 :(得分:1)
根据您的链接,有一个 CloseButtonVisibility 属性,可以获取或设置关闭按钮的可见性,尝试将其设置为“false”
答案 1 :(得分:1)
正如@Giallo所说,尝试设置Visibility属性会抛出异常。
为了隐藏关闭按钮,您需要将按钮的IsEnabled属性设置为false,将Opacity属性设置为0.0,如下所示:
Style closeButtonStyle = new Style(typeof(Button));
closeButtonStyle.Setters.Add(new Setter(UIElement.IsEnabledProperty, false));
closeButtonStyle.Setters.Add(new Setter(UIElement.OpacityProperty, 0.0));
Style msgBoxStyle = new Style(typeof(MessageBox));
msgBoxStyle.Setters.Add(new Setter(WindowControl.CloseButtonStyleProperty, closeButtonStyle));
然后显示您的消息框并引用您刚刚创建的MessageBox样式:
MessageBoxResult result = MessageBox.Show(
"Message Text",
"MessageBox Caption",
MessageBoxButton.OK,
MessageBoxImage.None,
MessageBoxResult.None,
msgBoxStyle);