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,但我几乎可以肯定,我以前没有遇到过这样的问题,但我在这个案例中可能是错误的。
编辑:当我打破调试我得到的消息:"你的应用程序已进入中断状态,但没有代码显示,因为所有线程都在执行外部代码"。
您的信息似乎不完整,但似乎您没有构建Dictionaries'AppDictionary.xaml
文件。您需要将其构建操作设置为资源。
同时,你的字典应该是这样的:
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Dictionaries'AppDictionary.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>