无法创建“MainViewModel”的实例
我正在创建一个简单的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代码:
如何克服这个错误? 谢谢。
PS:我在MSDN论坛上发布了相同的问题,但是我的整个代码,请寻求更好的理解。
根据用户的建议,我是否必须以这种方式保留我的OnStartup()?
public partial class App : Application { protected override void OnStartup(StartupEventArgs e) { base.OnStartup(e); } }
尝试在MainWindow的构造函数上进行绑定,并将其从XAML中删除:
public MainWindow() { InitializeComponent(); DataContext = new MainViewModel(); }
这应该工作..
您正在混合使用两种不同的方法来设置DataContext。 选择一个并继续。
如果你的viewmodels有默认的构造函数(即没有参数的构造函数),你可以在xaml中完成所有操作:
或者你将Window.DataContext保留在视图中,并在其他地方单独执行,也许在之前的OnStartup()中。
上述就是C#学习教程:无法创建“MainViewModel”的实例分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
public partial class App : Application { protected override void OnStartup(StartupEventArgs e) { base.OnStartup(e); var mainWindow = new MainWindow(); var viewModel = new MainViewModel(); mainWindow.DataContext = viewModel; // Bind the ViewModel to the Window Datacontext. mainWindow.Show(); } }
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1001472.html