翻譯|使用教程|編輯:龔雪|2022-03-16 11:01:57.903|閱讀 222 次
概述:本系列內(nèi)容將開始根據(jù)DevExpress WinForms MVVM創(chuàng)建示例應(yīng)用程序,本文繼續(xù)講解創(chuàng)建與ViewModel相關(guān)的視圖。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
在上文中,Scaffolding Wizard 為您創(chuàng)建了主視圖和詳細(xì)稀土,本文主要為您介紹如何編輯表單視圖。
由于您的詳細(xì)視圖包含允許修改集合記錄的按鈕,因此您需要為每個集合編輯表單,該過程與詳細(xì)表格的創(chuàng)建完全相同。
1. 將相關(guān)的 UserControl 添加到“Views”文件夾的每個子文件夾中。
2. 將組件拖放到每個用戶控件上,將相關(guān)的ViewModel(AccountViewModel、CategoryViewModel 和 TransactionViewModel)設(shè)置為每個組件的子ViewModel。
3. 您的編輯表單布局將類似于主應(yīng)用程序視圖,因此將 RibbonControl 和 DataLayoutControl 組件添加到您的表單,將 DataLayoutControl 的 Dock 屬性設(shè)置為 Fill。
4. 添加 DataLayoutControl 后,它將自動調(diào)用數(shù)據(jù)源選擇器對話框(見下圖),使用它將每個用戶控件的 DataLayoutControls 綁定到相關(guān)模型 - Account、Category 和 Transaction。
5. 在 DataLayoutControl 根據(jù)所選數(shù)據(jù)源添加編輯器后,您可以更改所選屬性的編輯器類型。 為此請在設(shè)計時選擇所需的編輯器,調(diào)用其智能標(biāo)簽并使用 ‘Change Editor Type’ 下拉列表選擇所需的編輯器(參見下圖)。 例如,您可以對所有 ‘Amount’段使用 SpinEdit 控件和 LookUpEdit 控件,以允許您的最終用戶在編輯交易時從下拉列表中選擇所需的帳戶和/或類別。
6. 確保 DataLayoutControl 的文本框?qū)ζ浣壎ㄊ褂?OnPropertyChanged 數(shù)據(jù)源更新模式,否則當(dāng)您創(chuàng)建新/修改現(xiàn)有記錄時,更改將僅在編輯器失去焦點后保存。 要更改此行為,請選擇您的文本編輯,然后轉(zhuǎn)到Visual Studio’s Properties窗口中的 DataBindings 部分,將其展開并單擊 ‘(Advanced)’ 行中的省略號按鈕(“...”)。 這將調(diào)用‘Formatting and Advanced Binding’ 對話框,您可以在其中在相應(yīng)的下拉菜單中選擇 OnPropertyChanged 數(shù)據(jù)源更新模式,下圖說明了這個過程。
您也可以直接在 Designer.cs 代碼中手動更改此設(shè)置,如下所示。
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. 添加管理收藏條目的功能區(qū)項目,為此請使用所需的命令填充功能區(qū),就像您之前使用詳細(xì)視圖所做的那樣。
下圖說明了您應(yīng)該得到的大致結(jié)果(顯示了 Account 模型的編輯表單)。
現(xiàn)在,當(dāng)所有所需類型的視圖都準(zhǔn)備好時,您可以繼續(xù)下一部分 - 導(dǎo)航。
DevExpress WinForm擁有180+組件和UI庫,能為Windows Forms平臺創(chuàng)建具有影響力的業(yè)務(wù)解決方案。DevExpress WinForms能完美構(gòu)建流暢、美觀且易于使用的應(yīng)用程序,無論是Office風(fēng)格的界面,還是分析處理大批量的業(yè)務(wù)數(shù)據(jù),它都能輕松勝任!
更多產(chǎn)品正版授權(quán)詳情及優(yōu)惠,歡迎咨詢
DevExpress技術(shù)交流群5:742234706 歡迎一起進(jìn)群討論
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@ke049m.cn
文章轉(zhuǎn)載自:慧都網(wǎng)