c# – 无法创建“MainViewModel”的实例
发布时间:2020-12-15 21:45:25 所属栏目:百科 来源:网络整理
导读:我正在创建一个简单的 WPF应用程序,用于使用Observable集合(遵循MVVM模式)实现数据绑定到数据库的数据绑定. App.xaml.cs类 public partial class App : Application { protected override void OnStartup(StartupEventArgs e) { base.OnStartup(e); var main
我正在创建一个简单的
WPF应用程序,用于使用Observable集合(遵循MVVM模式)实现数据绑定到数据库的数据绑定.
App.xaml.cs类 public partial class App : Application { protected override void OnStartup(StartupEventArgs e) { base.OnStartup(e); var mainWindow = new MainWindow(); var viewModel = new MainViewModel(); mainWindow.Show(); } } 当我尝试将它绑定到我的XAML时,我引发了以下错误: 无法创建“MainViewModel”的实例 XAML代码: <Window x:Class="MVVM_DemoAppl.Views.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:ViewModel="clr-namespace:MVVM_DemoAppl.ViewModels" Title="MainWindow" Height="350" Width="525"> <!-- The error is raised here --> <Window.DataContext> <ViewModel:MainViewModel/> </Window.DataContext> 如何克服这个错误?谢谢. P.S:我在MSDN forums上发布了同样的问题,但是在我的整个代码中,请寻求更好的理解. 根据用户的建议,我是否必须以这种方式保留我的OnStartup()? public partial class App : Application { protected override void OnStartup(StartupEventArgs e) { base.OnStartup(e); } } 解决方法
尝试在MainWindow的构造函数上进行绑定,并将其从XAML中删除:
public MainWindow() { InitializeComponent(); DataContext = new MainViewModel(); } 这应该工作.. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |