2011-12-11 47 views
4

在我的Windows Phone 7应用程序中,我写了一些代码让焦点跳转到返回键上的下一个文本框。这一切都可以正常工作,但现在我想要做的就是如果用户在最终文本框上按下了返回键,那么就可以获得软件键盘。但是没有UnFocus()方法。我该怎么做呢? :)失去文本框的重点

我想过聚焦别的东西(例如PhoneApplicationPage),但是这没有一个Focus()方法。

 public List<TextBox> Textboxes = new List<TextBox> { }; 

    public void CheckForReturn(object sender, KeyEventArgs e) 
    { 
     TextBox ThisTextbox = sender as TextBox; 
     if (e.Key == Key.Enter) 
     { 
      int ThisTextboxListPosition = Textboxes.IndexOf(ThisTextbox); 
      int NextTextboxListPosition = ThisTextboxListPosition + 1; 

      if (NextTextboxListPosition < Textboxes.Count) 
      { 
       TextBox NextTextBox = Textboxes[NextTextboxListPosition]; 
       NextTextBox.Focus(); 
      } 
      else 
      { 
       //Something like this! 
       //ThisTextbox.Unfocus(); 
      } 
     } 
    } 
+0

使用是否有你可以将焦点切换到页面上没有其他UI元素?例如,如果你有一个TextBlock来解释Textbox的用途,你可以使用'myTextBlock.Focus()'。或者,当用户在最后一个文本框中按Enter时,可以尝试将最后一个文本框设置为“只读”(然后切换回)。 – keyboardP

回答

13

我总是在这种情况下

this.Focus() 
+0

感谢x100!帮助我大好时间! – Andro

相关问题