2
爲什麼當我沒有懸停在按鈕或任何東西上時,第一個按鈕「激活」。這似乎發生在我更改標籤後。來自ViewModel的焦點控制
我懷疑,當我改變標籤,它關注的第一個控制。是這樣嗎?我正在開發一個MVVM應用程序,所以從我的視圖模型中,我可以如何專注於文本框呢?
爲什麼當我沒有懸停在按鈕或任何東西上時,第一個按鈕「激活」。這似乎發生在我更改標籤後。來自ViewModel的焦點控制
我懷疑,當我改變標籤,它關注的第一個控制。是這樣嗎?我正在開發一個MVVM應用程序,所以從我的視圖模型中,我可以如何專注於文本框呢?
由於WPF的焦點概念有點複雜,我有一個名爲FocusEnforcer的類。
無論如何,它確實能確保所需的控制得到關注。
public static class FocusEnforcer
{
public static void EnforceFocus(UIElement element)
{
if (!element.Focus())
{
element.Dispatcher.BeginInvoke(DispatcherPriority.Input,
new ThreadStart(delegate()
{
element.Focus();
}));
}
}
}
這種行爲只需要:行爲。或者至少有一個新的附屬財產。