我處理myDialog1_KeyDown事件,如果回車鍵被按下我的方法將焦點移到下一個元素是這樣的:預防重點關閉按鈕,當按下Enter鍵時
UIElement focusedElement = Keyboard.FocusedElement as UIElement;
if (focusedElement != null)
{
if(focusedElement.MoveFocus(newTraversalRequest(FocusNavigationDirection.Next)))
e.Handled = true;
}
myDialog1是myDockBase對象。 myDockBase是一個擴展DXWindow的類,用於應用程序中的每個模態對話框。
那麼問題是,當用戶位於最後一個字段 - 當他按Enter鍵焦點移至關閉按鈕(最小化和最大化按鈕被隱藏),然後如果他按Enter鍵再次關閉該窗口。
編輯:我想要什麼:如果關閉按鈕的重點是不允許用戶在按下關閉窗口回車鍵或者不將焦點移動到關閉按鈕
這是一個強烈的違反UI標準。選中Close按鈕的IsDefault屬性,按Enter鍵總是關閉對話框。 –