wpf devexpress 绑定数据编辑器
定义视图模型
打开前一个项目
打开RegistrationViewModel.cs文件添加如下属性到RegistrationViewModel类
[POCOViewModel]
public class RegistrationViewModel {public static RegistrationViewModel Create() {return ViewModelSource.Create(() => new RegistrationViewModel());}protected RegistrationViewModel() {if(this.IsInDesignMode())InitializeInDesignMode();else InitializeInRuntime();}void InitializeInDesignMode() {FirstName = "John";LastName = "Smith";Email = "John.Smith@JohnSmithMail.com";Password = "Password";ConfirmPassword = "Password";Birthday = new DateTime(1980, 1, 1);}void InitializeInRuntime() {Birthday = null;}public virtual string FirstName { get; set; }public virtual string LastName { get; set; }public virtual string Email { get; set; }public virtual string Password { get; set; }public virtual string ConfirmPassword { get; set; }public virtual DateTime? Birthday { get; set; }
}
从RegistrationViewModel是一个POCO类,所有定义属性都是可绑定的
InitializeInRuntime方法初始化生日属性。DateTime结构是一个值类型,因此Birthlday字段可以使用可空DateTime。和一个不可空类型,Birthday字段可能初始化在特定的值,没有被推荐
注册数据
添加AddEmployee方法到视图模型
[POCOViewModel]
public class RegistrationViewModel {...public void AddEmployee() {EmployeesModelHelper.AddNewEmployee(FirstName, LastName, Email, Password, Birthday.Value);}
}
POCO机制自动生成一个命令对于方法。生成的命令名字如下方法匹配[MethodName]Command。设置Command属性注册按钮:
<dxlc:LayoutControl Orientation="Vertical" ItemStyle="{StaticResource itemStyle}" ItemSpace="10">...<Button Content="Register" HorizontalAlignment="Center" VerticalAlignment="Bottom" Width="80" Command="{Binding AddEmployeeCommand}" />
</dxlc:LayoutControl>
绑定编辑器
重新生成项目
选择First Name TextEdit元素布局内容调用Quick Actions。点击重新排列按钮到EditValue右侧属性选择Create Data Binding

在调用对话框,启动Custom选项输入"FirstName"

绑定创建,FirstName编辑器显示测试数据在vs设计器
绑定余下的编辑器到它们的对应的属性和注册按钮到AddEmployee命令。XAML如下显示结果
<dxlc:LayoutControl Orientation="Vertical" ItemStyle="{StaticResource itemStyle}" ItemSpace="10"><dxlc:LayoutGroup ItemSpace="10"><dxlc:LayoutItem Label="Name"><dxe:TextEdit EditValue="{Binding FirstName}" /></dxlc:LayoutItem><dxe:TextEdit VerticalAlignment="Bottom" EditValue="{Binding LastName}" /></dxlc:LayoutGroup><dxlc:LayoutItem Label="Email"><dxe:TextEdit EditValue="{Binding Email}" /></dxlc:LayoutItem><dxlc:LayoutItem Label="Create a password"><dxe:PasswordBoxEdit EditValue="{Binding Password}" /></dxlc:LayoutItem><dxlc:LayoutItem Label="Confirm your password"><dxe:PasswordBoxEdit EditValue="{Binding ConfirmPassword}" /></dxlc:LayoutItem><dxlc:LayoutItem Label="Birthday"><dxe:DateEdit EditValue="{Binding Birthday}" /></dxlc:LayoutItem><Button Content="Register" HorizontalAlignment="Center" VerticalAlignment="Bottom" Width="80" Command="{Binding AddEmployeeCommand}" />
</dxlc:LayoutControl>
编辑器不显示测试数据在运行时

相关文章:
wpf devexpress 绑定数据编辑器
定义视图模型 打开前一个项目 打开RegistrationViewModel.cs文件添加如下属性到RegistrationViewModel类 [POCOViewModel] public class RegistrationViewModel {public static RegistrationViewModel Create() {return ViewModelSource.Create(() > new RegistrationVie…...
状态模式-
定义:当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。 适用场景: 1、一个对象的行为取决于它的状态,并且它必须在运行时刻根据状态改变它的行为。 2、条件、分支语句的代替者,且这些分支依赖于该对象…...
人机交互——自然语言生成
自然语言生成是让计算机自动或半自动地生成自然语言的文本。这个领域涉及到自然语言处理、语言学、计算机科学等多个领域的知识。 1.简介 自然语言生成系统可以分为基于规则的方法和基于统计的方法两大类。基于规则的方法主要依靠专家知识库和语言学规则来生成文本࿰…...
软考-高级-系统架构设计师教程(清华第2版)【第18章 安全架构设计理论与实践(P648~690)-思维导图】
软考-高级-系统架构设计师教程(清华第2版)【第18章 安全架构设计理论与实践(P648~690)-思维导图】 课本里章节里所有蓝色字体的思维导图...
Hive调优
1.参数配置优化 设定Hive参数有三种方式: (1)配置Hive文件 当修改配置Hive文件的设定后,对本机启动的所有Hive进程都有效,因此配置是全局性的。 一般地,Hive的配置文件包括两部分: aÿ…...
基于R语言平台Biomod2模型的物种分布建模与可视化分析
!](https://img-blog.csdnimg.cn/84e1cc8c7f9b4b6ab60903ffa17d82f0.jpeg#pic_center)...
Docker 安装一个本地的画图软件 —— 筑梦之路
画图是必不可少的,比如流程图、架构图等等,网上有很多画图软件是要收费的,使用起来很不方便,因此在内网部署一个免费开源的画图软件是有必要的。 如何部署 docker run -it --rm --name"drawio" -p 8080:8080 -p 8443:…...
【python】Conda强大的包/环境管理工具
Conda强大的包/环境管理工具 1. 简介2. 安装3. 指令 1. 简介 Conda是Anaconda中一个强大的包和环境管理工具,可以在Windows的Anaconda Prompt命令行使用,也可以在macOS或者Linux系统的终端窗口(terminal window)的命令行使用。2. 安装 [Linux平台安装教…...
常见面试题-Netty线程模型以及TCP粘包拆包
介绍一下 Netty 使用的线程模型? 答: Netty 主要基于主从 Reactor 多线程模型,其中主从 Reactor 多线程模型将 Reactor 分为两部分: mainReactor:监听 Server Socket,用来处理网络 IO 连接建立操作&…...
03.webpack中hash,chunkhash和contenthash 的区别
hash、contenthash 和 chunkhash 是通过散列函数处理之后,生成的一串字符,可用于区分文件。 作用:善用文件的哈希值,解决浏览器缓存导致的资源未及时更新的问题 1.文件名不带哈希值 const path require(path) const HtmlWebpac…...
OpenAI前CEO萨姆·阿尔特曼可能重返CEO职位;用LoRA微调LLM的实用技巧
🦉 AI新闻 🚀 OpenAI前CEO萨姆阿尔特曼可能重返CEO职位 摘要:据报道,OpenAI前CEO萨姆阿尔特曼有望重新担任CEO职位,并对公司董事会进行重大改变。微软等投资人正努力恢复阿尔特曼的职位,尽管董事会仍然是…...
修改docker默认数据目录
前言: docker默认数据目录是/var/lib/docker,根目录的存储空间有限,我们往往不能使用默认配置,需要创建空间相对较大的数据data目录 停止docker服务 systemctl stop docker 编辑配置文件 vi /etc/docker/daemon.json 增加选项 “graph”…...
wpf devexpress post 更改数据库
这个教程示范如何使用GridControl编辑数据,和保存更改到数据库。这个教程基于前一个篇。 Items Source Wizard 当 CRUD (Create, Read, Update, Delete) 启动选项时添加Post data功能 Items Source Wizard 生成如下代码: 1、设置 TableView.ShowUpdat…...
Ubuntu 18.04/20.04 LTS 操作系统设置静态DNS
1、nano /etc/systemd/resolved.conf 2、修改配置 使用DNS服务器:223.5.5.5 223.6.6.6 [Resolve] DNS223.5.5.5 223.6.6.6 3、重启服务 systemctl restart systemd-resolved.service 4、查看解析文件 cat /run/systemd/resolve/resolv.conf # This file is man…...
VSCode使用MinGW中的go并支持CGO
在Windows中,如果想使用Linux下的一些命令或者开发工具,可以安装Cygwin或者MinGW,MinGW相比Cygwin要轻量得多,笔者就安装的MinGW,但是安装MinGW后,如果把它加到Windows系统的PATH环境变量中,则可…...
tensor张量 ------ python特殊的数据结构
点赞收藏关注! 如需转载请注明出处! 张量与数组和矩阵非常相似。 在PyTorch中,使用张量来编码模型的输入和输出,以及模型的参数。 张量可以在GPU或其他硬件加速器上运行。 张量和NumPy数组通常可以共享相同的底层内存,…...
openai/chatgpt的api接口,各个模型的最大输入token一览表
chatgpt的各个3.5api模型接口的最大输入量一览表: MODELDESCRIPTIONCONTEXT WINDOWTRAINING DATAgpt-3.5-turbo-1106Updated GPT 3.5 Turbo New The latest GPT-3.5 Turbo model with improved instruction following, JSON mode, reproducible outputs, parallel…...
Spark作业串行与并行提交job
在Scala中,您可以以串行和并行的方式提交Spark作业。看看如何使用for和par.foreach构造对应的例子。 串行Spark作业(使用for) // 串行Spark作业设置 for (tag <- tags) {spark.sparkContext.setJobGroup(tag.toString, s"Tag: $tag…...
HTTP HTTPS 独特的魅力
目录 HTTP协议 HTTP协议的工作过程 首行 请求头(header) HOST Content-Length编辑 User-Agent(简称UA) Referer Cookie 空行 正文(body) HTTP响应详解 状态码 报文格式 HTTP响应格式 如何…...
【nlp】2.5(gpu version)人名分类器实战项目(对比RNN、LSTM、GRU模型)工程管理方式
人名分类器实战项目 0 说明1 工程项目设计2 数据预处理data_processing3 创建模型model4 模型测试test5 训练配置config6 模型训练train7 模型对比绘图plotfigure8 模型预测predict9 代码测试demo0 说明 本项目对前一个博客内容2.5(cpu version) 人名分类器实战项目(对比RNN、…...
使用VSCode开发Django指南
使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架,专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用,其中包含三个使用通用基本模板的页面。在此…...
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...
[ICLR 2022]How Much Can CLIP Benefit Vision-and-Language Tasks?
论文网址:pdf 英文是纯手打的!论文原文的summarizing and paraphrasing。可能会出现难以避免的拼写错误和语法错误,若有发现欢迎评论指正!文章偏向于笔记,谨慎食用 目录 1. 心得 2. 论文逐段精读 2.1. Abstract 2…...
[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...
【Java_EE】Spring MVC
目录 Spring Web MVC 编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 编辑参数重命名 RequestParam 编辑编辑传递集合 RequestParam 传递JSON数据 编辑RequestBody …...
基于 TAPD 进行项目管理
起因 自己写了个小工具,仓库用的Github。之前在用markdown进行需求管理,现在随着功能的增加,感觉有点难以管理了,所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD,需要提供一个企业名新建一个项目&#…...
搭建DNS域名解析服务器(正向解析资源文件)
正向解析资源文件 1)准备工作 服务端及客户端都关闭安全软件 [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0 2)服务端安装软件:bind 1.配置yum源 [rootlocalhost ~]# cat /etc/yum.repos.d/base.repo [Base…...
Redis:现代应用开发的高效内存数据存储利器
一、Redis的起源与发展 Redis最初由意大利程序员Salvatore Sanfilippo在2009年开发,其初衷是为了满足他自己的一个项目需求,即需要一个高性能的键值存储系统来解决传统数据库在高并发场景下的性能瓶颈。随着项目的开源,Redis凭借其简单易用、…...
深度剖析 DeepSeek 开源模型部署与应用:策略、权衡与未来走向
在人工智能技术呈指数级发展的当下,大模型已然成为推动各行业变革的核心驱动力。DeepSeek 开源模型以其卓越的性能和灵活的开源特性,吸引了众多企业与开发者的目光。如何高效且合理地部署与运用 DeepSeek 模型,成为释放其巨大潜力的关键所在&…...
React从基础入门到高级实战:React 实战项目 - 项目五:微前端与模块化架构
React 实战项目:微前端与模块化架构 欢迎来到 React 开发教程专栏 的第 30 篇!在前 29 篇文章中,我们从 React 的基础概念逐步深入到高级技巧,涵盖了组件设计、状态管理、路由配置、性能优化和企业级应用等核心内容。这一次&…...
