• 2024-11-17WPF Prism框架
    一、关于Prism框架Prism.Core:【Prism.dll】实现MVVM的核心功能,属于一个与平台无关的项目Prism.Wpf:【Prism.Wpf】包含了DialogService,Region,Module,Navigation,其他的一些WPF的功能Prism.Unity:【Prism.Unity.Wpf】,IOC容器Prism.Unity=>Prism.Wpf=>Prism.Core二、Pri
  • 2024-11-16详解WPF中的MVVM模式(二)
    文章目录1.视图模型优先介绍2.视图模型优先实现2.1ContentControl2.2实现代码3.视图模型优先示例4.总结继续接着上篇讲解WPF中的MVVM模式,本文主要讲解的是视图模型(ViewModelFirst)优先的实现方式。1.视图模型优先介绍在上篇文章中我们讲到,视图优先(ViewFirst)就
  • 2024-11-15【WPF】Prism学习(二)
    PrismCommands1.命令(Commanding)1.1.ViewModel的作用:ViewModel不仅提供在视图中显示或编辑的数据,还可能定义一个或多个用户可以执行的动作或操作。这些用户可以通过用户界面(UI)执行的动作或操作通常被定义为命令(Commands)。1.2.命令(Commands)的作用:命令提供了一种方便
  • 2024-11-11MVVM(Model-View-ViewModel)模型
    MVVM(ModelViewViewModel)模型是一种常用于软件开发中的架构模式,尤其在前端框架(如Vue.js、React、Angular)中被广泛应用。它将程序的用户界面与业务逻辑分离,便于维护和扩展。 MVVM的三个组成部分1.Model(模型):  表示应用程序的核心数据和业务逻辑。  处理数据的获取
  • 2024-10-30CommunityToolkit.Mvvm中的Ioc
    什么是Ioc在软件工程中,控制反转(IoC)是一种设计原则,其中计算机程序的自定义编写部分从外部源(例如框架)接收控制流。术语“反转”是历史性的:与过程式编程相比,具有这种设计的软件架构“反转”了控制。在过程式编程中,程序的自定义代码调用可重用库来处理通用任务,但在控制反转的情况下,是
  • 2024-10-24Android MVVM
    AndroidMVVM介绍MVVM(Model-View-ViewModel)是Android开发中常用的一种架构模式。它将应用程序的逻辑分离为三个主要部分:Model(模型)、View(视图)和ViewModel(视图模型),从而使代码更清晰、更易于维护。1.Model(模型)Model代表应用程序的数据和业务逻辑。它负责处理数据的获取、存储和
  • 2024-10-14WPF中MVVM的应用举例
    WPF(WindowsPresentationFoundation)是微软开发的用于创建用户界面的框架,而MVVM(Model-View-ViewModel)模式是一种分离前端UI逻辑与后台业务逻辑的方法。在WPF中使用MVVM模式可以提高代码的可维护性、可测试性和可扩展性。在这篇文章中,我们将深入探讨WPF中的MVVM模式,并通过具
  • 2024-10-10Jetpack-ViewModel+LiveData+DataBinding
    1.ViewModel解决问题:瞬态数据丢失异步调用内存泄漏类膨胀提高维护难度和测试难度作用:介于View视图和Model数据模型之间桥梁使视图和数据能够分离,也能保持通信publicclassMainActivityextendsAppCompatActivity{privateTextViewtextView;privateMy
  • 2024-09-25mvvm软件架构 个人见解
    usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;namespaceMVVM{  //MVVM框架——Vm层——///  ///主体框架是 数据 ViewModel---》dataservice----》config-----》各个模块  //
  • 2024-09-03Android架构组件:MVVM模式的实战应用与数据绑定技巧
    Android应用开发已经逐渐变得高效且模块化,MVVM(Model-View-ViewModel)设计模式与Android架构组件的结合,无疑提升了开发者的生产力。在本指南中,我们将详细介绍MVVM模式的概念,如何在Android中实现MVVM,并结合实际操作案例让读者更好地理解与运用数据绑定技巧。1.MVVM模式
  • 2024-08-30WPF-Prism中View和ViewModel的关联
    1、在MainWindow.xaml中进行Prism命名空间的引入以及ViewModelLocator.AutoWireViewModel属性的设置需要注意,AutoWireViewModel默认就是为True,表示自动关联ViewModel,因此这个命名空间引入以及设置属性的步骤是可以省略的2、通过ViewModelLocator进行View与ViewModel层的自动关
  • 2024-08-22Jetpack业务架构—四件套(Lifecycle、ViewModel、LiveData、DataBinding)
            Jetpack是一个由多个库组成的套件,可帮助开发者遵循最佳做法、减少样板代码并编写可在各种Android版本和设备中一致运行的代码,让开发者可将精力集中于真正重要的编码工作。1. AndroidJetpack组件的优势:        Jetpack推出的主要目的是为了能够
  • 2024-08-21WPF:MVVM的由来与属性绑定的过程
    WPF:MVVM的由来与属性绑定的过程1、MVVM(1)MVVM是什么?​ MVVM(Model-View-ViewModel)是一种软件架构设计模式MVVM模式。有助于分离应用程序的业务逻辑和用户界面层,使得开发过程更易于管理,同时也便于单元测试。Model?现实世界中对象的抽象结果。View?View=UI。ViewModel?Vie
  • 2024-08-17Android架构组件中的MVVM
    Android架构组件中的MVVM(Model-View-ViewModel)模式是一种广泛应用的设计模式,它通过将应用程序分为三个主要部分(Model、View、ViewModel)来分离用户界面和业务逻辑,从而提高代码的可维护性、可扩展性和可测试性。下面将详细介绍MVVM模式在Android开发中的实战应用,包括基本概念
  • 2024-08-07第十四章 -------------------WPF 和MVVM实战
    我的感悟:在编程时我刚开始是使用的MFC,现在回想起来当时我是怎么把程序运行起来的,我记得我当时是在View里面操作数据,在View里面操作Fream。可以说是糟糕的一塌糊涂,后期维护也是相当困难,这一点我现在回想起来想吐。------------------------------------------------------------
  • 2024-08-02Prism视图模型定位器(ViewModelLocator)
    视图模型定位器(ViewModelLocator)依照“标准命名约定”将视图(View)中的数据上下文链接到视图模型(ViewModel)的实例。自动绑定视图模型Prism视图模型定位器(ViewModelLocator)有一个AutoWireViewModel属性:当设置为true时,AutoWireViewModelChanged事件调用类中的ViewMod
  • 2024-07-26MVI 简单易懂
    Model-View-Intent出现的目的是为了解决MVVM中双向绑定数据的不足。把双向绑定变成单向数据流。使用Flow代替LiveData存储数据。Model:这里的Model不是其他框架中的Model层,在MVI框架中表示存储UI的状态。View:在MVI中View层主要是接口,负责相应UI的状态。Intent:在MVI中In
  • 2024-07-26Android 将 ViewModel 和 Compose界面的数据 双向绑定
    简介双向绑定说白了就是达到下面的效果:ViewModel能够实时传输从Room数据库查询到的数据到Compose页面。Compose页面能实时传输用户输入的数据到ViewModel类。需要分别在ViewModel和Compose中操作。一、在ViewModel中:1、使用mutableStateOf家族定义一个可变的值(
  • 2024-07-18WPF/C#:实现导航功能
    前言在WPF中使用导航功能可以使用Frame控件,这是比较基础的一种方法。前几天分享了wpfui中NavigationView的基本用法,但是如果真正在项目中使用起来,基础的用法是无法满足的。今天通过wpfui中的mvvm例子来说明在wpfui中如何通过依赖注入与MVVM模式使用导航功能。实践起来,我个人觉得
  • 2024-06-24Swift Combine — Debounce和Throttle的理解与使用
    Debounce和Throttle是两种常用的操作符,用于控制数据流的频率和处理延迟。但它们的实现方式略有不同。理解这些差异对于在Combine代码中做出正确选择至关重要。DebounceDebounce操作符用于限制数据流的频率,只有在指定的时间间隔内没有新数据到达时,才会将最后一个数据发
  • 2024-06-194.30
    返回 ItemEditViewModel 类,添加一个名为 updateItem() 的 suspend 函数,该函数不接受任何参数。您可以使用此函数将更新后的实体保存到Room数据库。 suspendfunupdateItem(){}在 getUpdatedItemEntry() 函数内,添加一个 if 条件,通过使用函数 validateInput()
  • 2024-06-17MVVM模式开发WinForm-ReactiveUI
    一、引言  谈到MVVM设计模式,首先让人想到的是WPF。没错,MVVM的概念是微软在2005年提出的,并首次将其应用到WPF中。最近非常火的Vue.js也是使用了MVVM的设计模式。MVVM设计模式的核心部分是DataBinding机制。顾名思义,其功能就是将Model的数据绑定到View层,并且将View层控件的变换绑
  • 2024-06-17VS插件开发实现简单的 ViewModel 和 View 之间的切换
    VS插件开发实现简单的ViewModel和View之间的切换1.前言我们在前面一篇中有介绍如何打开文件,如果和ViewModel与View的切换这个场景结合,那么我们也完全有能力写出一段代码来解决。2.代码目标进行*ViewModel.cs和*View.xaml之间的切换。3.可以预见的缺陷我们仅
  • 2024-06-07Prism之EventAggregator——实现ViewModel之间传递数据的工作
    publicclassMessageViewModel:BindableBase{IEventAggregator_ea;privatestring_message="MessagetoSend";publicstringMessage{get{return_message;}set{SetProperty(ref_message,value);}}
  • 2024-06-065.30
    做完了安卓端的政策查询系统页面跳转时数据传递这儿想到一个不一样的方法页面跳转的主函数这儿初始化viewModel避免了每次使用viewModel的初始化,将他作为一个参数传递给各个页面@ComposablefunAppNavHost(rootNavController:NavHostController=rememberNavContro