介面控制元件DevExpress WinForms MVVM入門教程——編輯表單檢視
在上文中,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線上公開課、中文教程資訊請上中文網獲取