【发布时间】:2018-11-12 21:49:34
【问题描述】:
我正在实现 MVVM 模式并希望使用 WPF 工具包 (Xceed.Wpf.Toolkit) 中的向导控件来设计我的界面。
我想做的是将向导的项目源绑定到List<ViewModelBase> 并使用DataTemplate 将其显示为页面。到目前为止,还没有乔伊。 :-(
我已经尽可能地精简了我的代码,但这就是它的精髓。
我对 XAML 的看法:
<xctk:Wizard FinishButtonClosesWindow="True" ItemsSource="{Binding Pages}" />
我的数据模板:
<DataTemplate DataType="{x:Type vm:ViewModelBase}">
<xctk:WizardPage Title="{Binding DisplayName}" Description="{Binding DisplayDescription}"/>
</DataTemplate>
在cs文件中: 虚拟机,返回列表的属性被定义:
public List<ViewModelBase> Pages
在 app.xaml.cs 中:
var viewModel = new ViewModels.winMainViewModel();
winMain window = new winMain();
window.DataContext = viewModel;
window.Show();
抛出的错误是:
System.NotSupportedException 未处理 HResult=-2146233067
Message=Wizard 应该只包含 WizardPages。
Source=Xceed.Wpf.Toolkit
任何帮助将不胜感激。
TIA, 雷
【问题讨论】:
标签: c# wpf wpftoolkit toolkit xceed