示例数据编译错误

Sample Data Compilation Error

所以我已经为此苦苦挣扎了一段时间,我想我会 post 在这里,以防其他人遇到类似的挑战。

在 Expression Blend 中从 class 创建示例数据时,生成的 XAML 将包含 class 中的只读属性值。这对于设计时数据和/或如果您不想在项目中包含示例数据文件是完全可以接受的。但是,如果您确实在项目中包含示例数据文件(可能将它们置于版本控制之下以便所有开发人员都可以访问它们)并尝试编译您的应用程序,您可能会收到一个或多个错误指示

'无法将'XXX'赋值给只读属性'XXXXXXXXXXXX'

我最初的解决方案是在设计时包含样本数据文件,在编译时排除它们。

我后来发现的一个更好的解决方案可以让您将示例数据文件保留为项目的一部分,但消除了编译错误。为此,只需用鼠标右键单击示例数据文件(它将具有 .xaml 扩展名)。来自 pop-up 菜单 select 属性(通常是列表中的最后一个条目)。在属性面板中,查找 Build Action 条目。它很可能设置为 Page 或导致示例数据 xaml 与您的应用程序一起编译的其他一些值。通过 selecting 下拉列表中的 'None' 条目,将构建操作的值更改为 None。保存、编译,您将不再收到有关 read-only 属性的编译错误消息。