wpf及mvvmlight学习备忘
2020-01-07 11:48
330 查看
vs2015
mvvmlight(nuget 下载最新版)
一、强行关闭
在我的程序中跑了一个新线程
Thread.Start()
关闭wpf窗口时,线程里的程序没跑完,则线程继续在后台跑
那就在主窗体的.cs文件中加入
protected override void OnClosed(EventArgs e) { base.OnClosed(e); Environment.Exit(0); }
二、项目导入mvvmlight及问题
在要用到mvvmlight的工种中添加mvvmlight之后
项目中会多出一个ViewModel文件夹
里面有两个文件:
MainViewModel.cs
ViewModelLocator.cs
而原先的App.xaml里也会多出几行东东:
<Application x:Class="WpfApp2.App" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="clr-namespace:WpfApp2" StartupUri="View/WelcomeView.xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" d1p1:Ignorable="d" xmlns:d1p1="http://schemas.openxmlformats.org/markup-compatibility/2006"> <Application.Resources> <ResourceDictionary> <vm:ViewModelLocator x:Key="Locator" d:IsDataSource="True" xmlns:vm="clr-namespace:WpfApp2.ViewModel" /> </ResourceDictionary> </Application.Resources> </Application>
即上面代码中的
<ResourceDictionary>
标签里的内容
这个先不管
直接运行一下,会报错
在ViewModel文件夹下的ViewModelLocator.cs里会报错
这个错误通过搜索发现了解决方法:
将这行报错的引用注释掉或删掉,添加另一行引用
即
using CommonServiceLocator;
这样就不报错了
三、mvvmlight框架的ObservableObject
类继承ObservableObject
当然要引用相应的包
using GalaSoft.MvvmLight;
这个按我的理解就是继承了这个类,属性的变化就可响应,并且从UI中反应出来
即属性有变动时,UI中也相应更新
在窗体的xaml.cs中,在构造函数里要定义数据绑定时的上下文
this.DataContext = ……;
在xaml文件里绑定
<TextBlock Text="{Binding Welcom.Introduction}" FontSize="30"></TextBlock>
开一个新线程,里面隔一定时间,给绑定的数据更新,这样在窗口中的TextBlock里也会随之更新内容
相关文章推荐
- MvvmLight学习篇—— Mvvm Light Toolkit for wpf/silverlight系列(子林)
- MVVMLight学习篇——WPF MVVMLightToolkit(李凤桐)
- MvvmLight学习篇—— Mvvm Light Toolkit for wpf/silverlight系列(导航)
- MvvmLight学习心得三
- WPF新手实践3:MVVM Light Toolkit(三、ViewModel和View)(转)
- silverlight 学习笔记 (六): MVVM Light Toolkits 之 Messager
- MVVM Light tookit 学习笔记3
- WPF新手实践4:MVVM Light Toolkit(四、Model、ViewModel和View)(转)
- WPF新手实践1:MVVM Light Toolkit(一、下载与安装)
- WPF新手实践3:MVVM Light Toolkit(三、ViewModel和View)
- WPF程序只允许一个启动在MVVMLight框架下找不到资源的问题
- 【2016-10-24】【坚持学习】【Day11】【WPF】【MVVM】
- Mvvm Light Toolkit for wpf/silverlight系列之Command和Events
- WPF新手实践5:MVVM Light Toolkit(五、Command)(转)
- wpf mvvm light 消息机制
- MVVMLight+WPF
- Mvvm Light Toolkit for wpf/silverlight系列之Messenger
- WPF、MVVM和Prism学习历程
- Mvvm Light Toolkit for wpf/silverlight系列之Command和Events
- Mvvm Light Toolkit for wpf/silverlight系列之搭建mvvmlight开发框架 .