在上文中,Scaffolding Wizard 为您创建了主视图和详细稀土,本文主要为您介绍如何编辑表单视图。
编辑表单视图
由于您的详细视图包含允许修改集合记录的按钮,因此您需要为每个集合编辑表单,该过程与详细表格的创建完全相同。
1. 将相关的 UserControl 添加到“Views”文件夹的每个子文件夹中。
2. 将MvvmContext组件拖放到每个用户控件上,将相关的ViewModel(AccountViewModel、CategoryViewModel 和 TransactionViewModel)设置为每个组件的子ViewModel。
3. 您的编辑表单布局将类似于主应用程序视图,因此将 RibbonControl 和 DataLayoutControl 组件添加到您的表单,将 DataLayoutControl 的 Dock 属性设置为 Fill。
4. 添加 DataLayoutControl 后,它将自动调用数据源选择器对话框(见下图),使用它将每个用户控件的 DataLayoutControls 绑定到相关模型 - Account、Category 和 Transaction。
5. 在 DataLayoutControl 根据所选数据源添加编辑器后,您可以更改所选属性的编辑器类型。 为此请在设计时选择所需的编辑器,调用其智能标签并使用 ‘Change Editor Type’ 下拉列表选择所需的编辑器(参见下图)。 例如,您可以对所有 ‘Amount’段使用 SpinEdit 控件和 LookUpEdit 控件,以允许您的最终用户在编辑交易时从下拉列表中选择所需的帐户和/或类别。
6. 确保 DataLayoutControl 的文本框对其绑定使用 OnPropertyChanged 数据源更新模式,否则当您创建新/修改现有记录时,更改将仅在编辑器失去焦点后保存。 要更改此行为,请选择您的文本编辑,然后转到Visual Studio’s Properties窗口中的 DataBindings 部分,将其展开并单击 ‘(Advanced)’ 行中的省略号按钮(“...”)。 这将调用‘Formatting and Advanced Binding’ 对话框,您可以在其中在相应的下拉菜单中选择 OnPropertyChanged 数据源更新模式,下图说明了这个过程。
您也可以直接在 Designer.cs 代码中手动更改此设置,如下所示。
C#
//Make sure the DataSourceUpdateMode is set to OnPropertyChanged this.NameTextEdit.DataBindings.Add(new System.Windows.Forms.Binding("EditValue", this.accountBindingSource, "Name", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged)); this.AmountTextEdit.DataBindings.Add(new System.Windows.Forms.Binding("EditValue", this.accountBindingSource, "Amount", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
VB.NET
'Make sure the DataSourceUpdateMode is set to OnPropertyChanged Me.NameTextEdit.DataBindings.Add(New System.Windows.Forms.Binding("EditValue", Me.accountBindingSource, "Name", True, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged)) Me.AmountTextEdit.DataBindings.Add(New System.Windows.Forms.Binding("EditValue", Me.accountBindingSource, "Amount", True, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged))
7. 添加管理收藏条目的功能区项目,为此请使用所需的命令填充功能区,就像您之前使用详细视图所做的那样。
下图说明了您应该得到的大致结果(显示了 Account 模型的编辑表单)。
现在,当所有所需类型的视图都准备好时,您可以继续下一部分 - 导航。
DevExpress WinForm拥有180+组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!
更多产品正版授权详情及优惠,欢迎咨询在线客服>>
DevExpress技术交流群5:742234706 欢迎一起进群讨论
更多DevExpress线上公开课、中文教程资讯请上中文网获取
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果
转载请注明:文章转载自:DevExpress控件中文网 [https://www.devexpresscn.com/]
本文地址:https://www.devexpresscn.com/post/2957.html