1. 需求 在 MVVM 中 ViewModel 和 View 之間的交互通常都是靠 Icommand 和 INotifyPropertyChanged,不過有時候還會需要從 MVVM 中控制 View 中的某個元素,讓它獲得焦點,例如這樣: 上面的 gif 是我在另一篇文章 《自定義一個 ...
. 需求 在上一篇文章 在 ViewModel 中讓數據驗證出錯 Validation.HasError 的控件獲得焦點 中介紹了如何讓 Validation.HasError 的控件自動獲得焦點,之后引申了另一個問題:如果有多個 HasError 的控件,如何只讓第一個自動獲得焦點。 這需求比較常見,所以我試着解決這個問題,最終完成了一個 Demo,XAML 如下: 為了實現這個功能用到了幾個 ...
2020-12-28 09:08 5 813 推薦指數:
1. 需求 在 MVVM 中 ViewModel 和 View 之間的交互通常都是靠 Icommand 和 INotifyPropertyChanged,不過有時候還會需要從 MVVM 中控制 View 中的某個元素,讓它獲得焦點,例如這樣: 上面的 gif 是我在另一篇文章 《自定義一個 ...
簡單用法如下: 在父類容器中通過附加屬性FocusManager.FocusedElement來綁定需要強制獲得焦點的控件,用法如下: <Grid FocusManager.FocusedElement="{Binding ElementName=btn ...
1. 需求 加載后讓第一個輸入框或者焦點是個很基本的功能,典型的如“登錄”對話框。一般來說“登錄”對話框加載后“用戶名”應該馬上獲得焦點,用戶只需輸入用戶名,點擊Tab,再輸入密碼,點擊回車就完成了登錄操作。 在WPF中要讓一個控件在加載時獲得焦點應該很簡單,只需要在Loaded事件后調用 ...
表單的數據驗證往往枯燥無味,又不可避免. 在一個如下表單只有兩個輸入框,和確定按鈕的情況下,正常我們需要做哪些工作呢? 1. 如果年齡輸入框輸入了非數字的字符串,輸入框失去焦點后,后面錯誤消息應當能立即提示出來 2.錯誤的提示的內容如果變化,你可能需要修改整個UI設計.(如顯示在輸入框 ...
var obj = { "1":"123", "2":"456" } console.info( obj[Object.keys(obj)[0]] ); 控制台輸出為 123 c ...
今天在一個.NET群里看到有個人問如何查找到每組第一個人的全部信息,當時自己也在忙着公司的和學校的需求報告,但是自己也是希望嘗試一下的,就讓他先把數據庫給我,在完成了該完成任務的時候,我還是很樂意的幫助那些需要幫助的人了,可是還是挺悲劇的,我的Sql2008打不開他的數據庫(因為Sql2008 ...
<Setter Property="FocusVisualStyle" Value="{x:Null}" /> ...
WPF 全稱為 Windows Presentation Foundation。 核心特性: WPF使用一種新的XAML(Extensible Application Markup Language)語言來開發界面,這將把界面開發以及后台邏輯很好的分開,降低了耦合度 ...