【问题标题】:d:DesignData issue, Visual Studio 2010 cant build after adding sample design data with Expression Blend 4d:DesignData 问题,Visual Studio 2010 在使用 Expression Blend 4 添加示例设计数据后无法构建
【发布时间】:2010-05-21 18:58:36
【问题描述】:

VS 2010 解决方案和 Silverlight 项目构建良好,然后:

  1. 我在 Expression Blend 4 中打开 MyView.xaml 视图
  2. 从类中添加示例数据(我使用我在同一个项目中定义的类)

在我使用 Expression blend 4 添加新的示例设计数据后,一切看起来都很好,您可以在 EB 4 中看到添加的示例数据,您还可以在 VS 2010 设计器中看到数据。

关闭 EB 4,下一个 VS 2010 版本给我这个错误:

 Error 7 XAML Namespace http://schemas.microsoft.com/expression/blend/2008 is not resolved. C:\Code\source\...myview.xaml

和:

Error 12 Object reference not set to an instance of an object. ... TestSampleData.xaml

当我打开 TestSampleData.xaml 时,我看到用于定义示例数据的类的命名空间无法识别。

但是这个命名空间和类本身存在于同一个项目中!

如果我从 MyView.xaml 中删除设计数据:

d:DataContext="{d:DesignData /SampleData/TestSampleData.xaml}"

它构建得很好,这次可以识别 TestSampleData.xaml 中的命名空间?? 然后如果添加:

d:DataContext="{d:DesignData /SampleData/TestSampleData.xaml}" 

我再次在 VS 2010 设计器示例数据中看到,但下一次构建失败并且我再次看到工作室无法在包含示例数据的 TestSampleData.xaml 中找到命名空间。

那个循环快把我逼疯了。我在这里遗漏了什么吗,难道不能让您的类在您拥有 MyView.xaml 视图的同一个项目中定义示例设计数据吗??

干杯 瓦尔科

【问题讨论】:

    标签: visual-studio expression-blend


    【解决方案1】:

    我知道这是一个老问题,但是您的 xaml 中有 mc:Ignorable="d" 行吗?没有这行你会得到这个错误。

    【讨论】:

      【解决方案2】:

      添加这个命名空间

      xmlns:SampleData="clr-namespace:Expression.Blend.SampleData.TestSampleData"
      

      将此资源添加到资源字典

      <SampleData:TestSampleData x:Key="TestSampleData" d:IsDataSource="True"/>
      

      在你的 xaml 中这样引用

      d:DataContext="{Binding Source={StaticResource TestSampleData}}"
      

      我意识到这是一个老问题,但我希望这对某人有所帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-05-29
        • 1970-01-01
        • 1970-01-01
        • 2011-06-01
        • 1970-01-01
        相关资源
        最近更新 更多