08 2022 档案
摘要:Unity IOC的一些理解 1.什么是IOC? IOC(Inversion of Control),控制反转,又称为“依赖注入(DI =Dependence Injection) 一句话描述:把创建对象的权力交给第三方控制。不再直接使用new去创建对象,而是通过第三方容器去创建,管理,在使用对象实
阅读全文
摘要:最新.net6 wpf MVVMToolkit 8.0 工程搭建。 MVVMToolkit是一个轻量级MVVM框架,在框架下我们第一个要做的就是搞清在此框架下的一些常规操作:属性绑定和通知,命令绑定,消息传递。搞懂这些处理流程,然后就可以写自己业务的逻辑。 1.安装mvvmtoolkit 1.1Nu
阅读全文
摘要:SeverCollection IOC在Nuget上搜索microsoft.extensions.dependencyinjection 1.一个简单的代码例子: private static void Main(string[] args) { Console.WriteLine("Hello,
阅读全文
摘要:1.新建prsim工程,修改工程 新建wpf工程,Nuget添加prism.Unity,自动添加需要的包 项目结构: 修改App.xaml 修改前: 修改后: App.xaml.cs: 到这一步,一个wpf基于prism的工程就可以运行了,修改一下项目结构,用于自动绑定ViewModel 把Main
阅读全文
摘要:VS2022 .net6 WPF MvvmToolkit下出现这个问题 解决办法: Fix build when using source generators (#6534) by singhashish-wpf · Pull Request #6680 · dotnet/wpf (github.
阅读全文
摘要:button的Command在绑定一个命令时,被绑定的命令是实现了ICommand接口的类对象: mvvm模式下,与业务逻辑有关的Command绑定ViewModel或Model中的命令,这个命令必须是继承自ICommand的类的实例 与业务逻辑无关的命令,只和界面相关的 Command绑定Rout
阅读全文
摘要:Microsoft.Xaml.Behaviors.Wpf
阅读全文
摘要:Task用法记录总结 1.创建Task的3种方法 1.1new方式实例化一个Task,需要通过Start方法启动 Task task = new Task(() => { Thread.Sleep(100); Console.WriteLine($"hello, task1的线程ID为{Thread
阅读全文
摘要://命名空间using System.Xml; //初始化一个xml实例 XmlDocument xml=new XmlDocument(); //导入指定xml文件 xml.Load(path);//指定一个节点 XmlNode root=xml.SelectSingleNode("/root")
阅读全文
摘要:数据模板和控件模板的区别在哪? 控件模板是用来修改某个控件内部的布局结构,不涉及到把一些数据(类对象)绑定到控件模板内部 数据模板是用来定义数据怎么显示,数据通常是来自数据集合,把一个数据集合和一个集合控件关联起来,如ListBox,ComboBox,ItemContcrol这种集合形式的控件,数据
阅读全文
摘要:1什么是路由事件 简单说,路由事件可以沿着视觉树VisualTree进行传递,在这视觉树中的所有对象都可以收到这个事件。前提是添加了检测。 1.1什么是逻辑树LogicalTree 简单理解:逻辑树就是我们在xaml中写的布局逻辑 如xaml代码: <Grid> <StackPanel Orient
阅读全文
摘要:1.控件模板和style的区别 Style用来修改控件属性的值,比如button的height width background。 Controltemplate用来修改一个控件的内部结构,比如一个button,想把一个button的内部添加一个图片和一个提示文本,这两部分合起来还能完成button
阅读全文
摘要:Validation ValidationRule iDataErrorInfo+DataAnimation 的用法 //Validation:依赖属性用(在验证回调中返回false) //ValidationRule:依赖属性和普通类的属性都能用 //IdataErrorInfo:依赖属性和普通类
阅读全文
摘要:初学者。博客仅做个人的理解整理,不到位的地方欢迎大佬们指出,感谢。 1.类型转换器 TypeConverter 1.1类型转换器是用来干什么的? 在xaml中给控件的属性赋值,后台代码解析这个值并赋值给控件的对应的属性(这个属性肯定是依赖属性了) 如在xaml中写: <Border BorderBr
阅读全文
摘要:初学者。博客仅做个人的理解整理,不到位的地方欢迎大佬们指出,感谢。 1.绑定使用的关键字:Binding 2.为什么要? 把界面上的控件的属性和后台的变量绑定起来,达到效果:在后代修改变量,界面自动更新数据。 控件的属性必须时依赖属性或者依赖附加属性才能绑定 3.绑定表达式中常用的关键字: Sour
阅读全文