【问题标题】:"Live" data in XAML editor window in Visual Studio and running applicationVisual Studio 中 XAML 编辑器窗口中的“实时”数据和正在运行的应用程序
【发布时间】:2018-06-11 06:34:10
【问题描述】:

我正在尝试使用 MVVM Light 为 SparxEA 实现插件。我发现有趣的一件事是在 MVVM Light 课程中提到的在窗口中查看“实时”数据。所以,我也想做同样的事情。因为我有类库项目,所以我不能使用 App.XAML。

在 XAML 中我有这个代码:

<Window x:Class="GoatJira.View.About"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:local="clr-namespace:GoatJira.View"
    xmlns:viewmodel="clr-namespace:GoatJira.ViewModel"
    mc:Ignorable="d"
    Title="{Binding Path=AboutTitle}" Height="322.613" Width="573.608" ResizeMode="NoResize" ShowInTaskbar="False" WindowStartupLocation="CenterScreen" Initialized="Window_Initialized"
    DataContext="{Binding Source={StaticResource ResourceKey=AboutData}}"
    >

<Window.Resources>
    <ResourceDictionary>
        <viewmodel:AboutViewModel x:Key="AboutData"/>
    </ResourceDictionary>
</Window.Resources>
…

这在 Visual Studio IDE 中完美运行。当我运行应用程序并想要实例化窗口时,我得到了这个异常(翻译自捷克语):未找到标记为 AboutData 的源。来源名称区分大小写。

当我用 DataContext 删除第 10 行时,我看不到 VS 中的绑定数据,另一方面,当我在代码中分配 DataContext 时,应用程序工作正常。我的理解是,有一种方法可以在 VS 和运行应用程序中运行而无需更改任何内容。

你知道我做错了什么吗?

如果需要,整个代码在https://github.com/SlavekRydval/GoatJira。

【问题讨论】:

    标签: wpf visual-studio xaml mvvm mvvm-light


    【解决方案1】:

    如果将 DataContext 移到资源部分之后会发生什么,即

    <Window blah=for>
        <Window.Resources>
            <ResourceDictionary>
                <viewmodel:AboutViewModel x:Key="AboutData"/>
            </ResourceDictionary>
        </Window.Resources>
    
     <Window.DataContext>
          <StaticResourceExtension ResourceKey="AboutData"/>
    </Window.DataContext>
    

    【讨论】:

      猜你喜欢
      • 2011-11-27
      • 2014-11-05
      • 2017-07-02
      • 2019-07-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-10
      • 1970-01-01
      相关资源
      最近更新 更多