簡體   English   中英

TextBox LostFocus事件經常發生

[英]TextBox LostFocus event occurs too often

我在Silverlight和WPF中有一個應用程序。 該錯誤只發生在Silverlight中,但WPF中使用了相同的代碼。

在我的應用程序,有一個RibbonBar ,有幾個RibbonGroups 在每個RibbonGroup中至少有一個RibbonButton 其中一個RibbonGroups還包含四個TextBox

每個TextBox都有自己的OnLostFocus -Handler。 當我離開TextBox ,會引發相關的Handler。

現在,(1)我點擊其中一個TextBoxes和(2)然后點擊RibbonButton,OnLostFocus加注,然后出現RibbonButton下拉菜單。 一切還好。

之后,(3)我點擊另一個RibbonButton。 再次OnLostFocus加注,雖然 - imho - 它不應該。

所以它一直在繼續。 在每次操作之后,TextBox保持(或者返回,不知道)焦點,這會導致OnLostFocus-Handler引發。

在WPF中,相同的代碼不會再次引發OnLostFocus。 只有一次,它真的失去了焦點。

有誰知道,為什么這種行為在Silverlight中很奇怪。 與WPF有什么不同,也許我只需設置一個默認值與WPF不同的屬性。

提前致謝。

嘗試使用OnPreviewLostKeyboardFocus。 OnLostFocus用於邏輯焦點,您可能會因各種原因而丟失。

我不知道確定的原因,但我懷疑你看到的問題可能是因為功能區欄位於FocusScope中。 當你將焦點放在焦點范圍內的某些東西上時,你最終得到的東西看起來就像聚焦在一些物體周圍。 我不確定這個答案,WPF中的焦點非常復雜。 提交一些代碼示例可能會有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM