Wpf DependencyProperty.UnsetValue不是属性的有效值

Wpf DependencyProperty.UnsetValue不是属性的有效值,wpf,mvvm,prism,unity-container,Wpf,Mvvm,Prism,Unity Container,我的引导程序类中有以下代码: protected override void InitializeShell() { Application.Current.MainWindow = (Window)this.Shell; //520 Application.Current.MainWindow.WindowState = WindowState.Maximized; Application.Current.MainWindow.WindowStyle = WindowS

我的
引导程序类中有以下代码:

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”的有效值

我怀疑
未设置值
可能来自
窗口样式。无
,但因为
允许透明性
某处是
真实的
,这是我唯一允许使用的窗口样式

我在谷歌搜索中发现的这个问题的其他情况提供了更多的细节,但没有一个适合我的情况,我不知道我应该找到并分享哪些其他细节。有没有人能帮我调试这个程序的一些步骤,或者我应该查看的应用程序的一些方面

我找到了这个setter:
,没有找到一条消息,上面写着
controlouterorder\u Normal


使用
DynamicResource
或包含(合并)包含
ControlOuterOrder\u Normal
ResourceDictionary
(如果未在任何地方定义它,则定义它)。

哪个代码/xaml/样式将
边框笔刷设置为
未设置值
<代码>静态资源
动态资源
?是否包含所有的资源字典?它看起来像
DynamicResource
作为主窗口,如
Style=“{DynamicResource SARDSWindowStyle}”
。我在应用程序的其他任何地方都找不到文本
SardsWindowsStyle
,我怀疑该资源应该是从dllI加载的,意思是:应该设置为
未设置值的
边框刷
,它是如何设置的,在哪里设置的?在代码中,在xaml中,在样式中,到静态资源还是动态资源?我找到了这个setter:
,没有找到一条消息,上面写着
controlouterorder\u Normal