VS 2015 WPF:字典导致窗口冻结/命名空间未创建

本文关键字:冻结 命名空间 创建 窗口 WPF 2015 字典 VS | 更新日期: 2023-09-27 18:08:42

我在摆弄一下新的VS 2015,我发现了两个奇怪的行为,我真的无法解释。也许你可以帮助我,如果这是简单的错误或我做一些普遍错误:Í有一个简单的项目,主窗口只有一个数据网格:

<Grid>
    <DataGrid>
        <DataGrid.Columns>
            <DataGridTextColumn Header="Test" />
        </DataGrid.Columns>
    </DataGrid>
</Grid>

在App.XAML中,我在子文件夹中加载了一个Dictionary:

<Application.Resources>
        <ResourceDictionary Source="Dictionaries'AppDictionary.xaml" />
</Application.Resources>

字典是这样的:

<Style TargetType="Grid">
    <Setter Property="Margin" Value="10" />
</Style>

现在,只要我加载窗口,它似乎永远冻结。我测试了一些网格属性,但这只发生在我设置边距的时候。我检查了继承从DataGrid或DataGridTextColumn,但他们似乎不继承从网格无论如何。

第二个异常:我需要在字典子文件夹中创建一个类,否则我会一直得到异常:

or的类型命名空间名称"字典"在命名空间中不存在'WpfApplication3'(您是否缺少一个程序集参考?)

我有一段时间没有使用WPF,但我几乎可以肯定,我以前没有遇到过这样的问题,但我在这个案例中可能是错误的。

编辑:当我打破调试我得到的消息:"你的应用程序已进入中断状态,但没有代码显示,因为所有线程都在执行外部代码"。

VS 2015 WPF:字典导致窗口冻结/命名空间未创建

您的信息似乎不完整,但似乎您没有构建Dictionaries'AppDictionary.xaml文件。您需要将其构建操作设置为资源。

同时,你的字典应该是这样的:

<Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="Dictionaries'AppDictionary.xaml" />
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>
</Application.Resources>