在使用VS2012,WPF 4.5和设计时数据(特别是DesignInstance属性)时,我只花了几个小时处理问题.
目标:我希望在我的WPF项目(基于MVVM)中获得设计时数据支持,无论是在VS2012还是Blend中,我都无法在生命中使MVVMLight方法始终如一地工作.
因此,我尝试使用Blend提供的标记扩展,使用内置的设计时数据支持更改为"just".
问题:请考虑以下代码:
<Window x:Class="Nova.View.AlertsView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:Nova.View"
xmlns:vm="clr-namespace:Nova.ViewModel"
mc:Ignorable="d"
DataContext="{Binding Alerts, Source={StaticResource Locator}}"
d:DataContext="{d:DesignInstance vm:DesignAlertsViewModel, IsDesignTimeCreatable=True}"
... />
Run Code Online (Sandbox Code Playgroud)
VS2012和Blend都报告"名称DesignAlertsViewModel在命名空间clr-namespace中不存在:Nova.ViewModel",即使intellisense解决它很好,并且你已经检查过一千次命名空间和类名都是正确的.