WPF应用程序中Dictionary的Expression Blend和Sample数据

Mar*_*ark 23 wpf xaml expression-blend

我有一个WPF应用程序,我使用Blend来设置样式.

我的一个视图模型是这样的类型:

public Dictionary<DateTime, ObservableCollection<MyViewModel>> TimesAndEvents
Run Code Online (Sandbox Code Playgroud)

但是当我尝试在Expression Blend中创建一些示例数据时,它根本不会为此属性创建XAML.

你能在XAML中创建这样的数据类型吗?非设计时间支持正在削弱我的生产力.

Jas*_*son 0

我已经在我的定位器中创建了我的视图模型的设计时实例,我将其引用为上面建议的@ChrisW:

d:DataContext="{Binding Source={StaticResource Locator}, Path=DesignTimeVM}"
Run Code Online (Sandbox Code Playgroud)

因此,我可以使用一些硬编码值来填充我的列表、组合框等。使所有内容的样式设置变得更加容易。

我使用 MVVM Light,因此在 ViewModel 的构造函数中我使用如下模式:

if(IsInDesignMode)
{
  ListUsers = new List<User>();
.
.
.
}
Run Code Online (Sandbox Code Playgroud)

该代码将仅在设计时执行,并且您将把 Xaml UI 绑定到实际数据。