[WPF] 在ViewModel 中實現Command Binding
之前提及到在WPF 中利用Mode-View-ViewModel (MVVM) 中作EventHandling, 而一般的command binding 則須要自建class 去處理.
之前提及到在WPF 中利用Mode-View-ViewModel (MVVM) 中作EventHandling, 而一般的command binding 則須要自建class 去處理.
WPF 的驗證可以透過ValidationRules 實現, 然而在實際情況中, 驗證除了Pass / Failure 外, 還可能會有severity level, warning 等. 可惜WPF 本身不支援. 若要加入的話, 最直接的方法只得從ViewModel 著手.
在建立form based application 時常常都會觸發事件, 而以往都會在code-behind 處理, 然而這樣會令測試變得難以透過Unit Test Project 自動化. 亦因此在WPF 中亦有方法去應對.
在WPF 的DataGrid 中, 若需要自設DataGridColumn, 可以利用XAML DataGridTemplateColumn. 然而若遇到AutoGenerateColumn為true 或須要增加其re-usability 時, 自建user control 反而比較化算. 在這裡, 會建立兩個DataGird column來分別存取數字和日期.
在正常情況下, 當WPF datagrid bind abstract class 時, 只會顯示該abstract class 內容, 而implement 的attribute 則不會出現. 這是因為這個binding 過程乃在compile time 進行而非run-time 進行. 若要實現的話, 則須要進行部份設置.
Tool bar 在以往的UI 開發上, 通常都是將表格功能放在一堆中方便使用. 在WPF 中, 繼續沿用此功能. 然而, 若要將其抽離作User Control, 則會真的變了一個button, 所以須要作若干手動修正.
自從轉了工種後, 做過不同類型的projects, 亦試了應用不同的平台, 然而, 技術不是重點, 最重是選擇最理想的工具. 根據經驗整理後, 重點有四項: 用戶群, 是否需要跨平台, 硬件配套, Standalone / Multi-tier.
為了提高UX, 在ListView中輸入字符時, 通常都會跳去指定的item中, 然而用Bind 了object 後若須要指定用什麼property 進行搜尋, 則需要再作設定.
之前介紹過Fontawesome 是一套Bootstrap 的icon library. 然而只限於web application 中使用. 在正常情況下, 在WPF中亦須要render SVG file.
利用DataGrid 來列示資料是一件正常事, 然而, 在WPF中若須要列出class property, 若用原廠設定的話, 標題會用property name. 若需要自定標題, 則須要應用DomainNameAttribute 來設置.
Copyright © 2024 | MH Magazine WordPress Theme by MH Themes