如何解决DependencyProperty.UnsetValue 不是属性
我的 Bootstrapper
类中有以下代码:
protected override void InitializeShell() {
Application.Current.MainWindow = (Window)this.Shell; //520
Application.Current.MainWindow.WindowState = WindowState.Maximized;
Application.Current.MainWindow.WindowStyle = WindowStyle.None;
try
{
Application.Current.MainWindow.Show(); //720
}
catch (ArgumentException exp)
{
// avoid RadRibbonWindow.AttachToWindowInteropHandle exceptions when closing window
}
}
当我的代码遇到行 Application.Current.MainWindow.Show();
时,我的调试器捕获到异常:
System.InvalidOperationException: ''{DependencyProperty.UnsetValue}' 不是属性“BorderBrush”的有效值。
我怀疑 UnsetValue
可能来自 WindowStyle.None
,但因为某处的 AllowTransparency
是 True
,这是我唯一被允许使用的窗口样式。>
我在谷歌搜索中发现的这个问题的其他情况提供了更多细节,但没有一个适合我的情况,我不知道我应该找到和分享哪些其他细节。有人可以帮助我完成一些步骤或我应该查看的应用程序区域以进行调试吗?
解决方法
我找到了这个 setter:<Setter Property="BorderBrush" Value="{StaticResource ControlOuterBorder_Normal}"/>
和一条消息,指出 ControlOuterBorder_Normal
没有找到。
使用 DynamicResource
或包含(合并)包含 ResourceDictionary
的 ControlOuterBorder_Normal
(如果未在任何地方定义,则定义它)。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。