2012-07-31 23 views
1

我有以下代碼:如何在metro風格的應用程序設置重點放在richeditbox上?

private async void SendMsg_Click(object sender, RoutedEventArgs e) 
{ 
RichEditBox.Document.SetText(TextSetOptions.None, ""); 
await Dispatcher.RunAsync(CoreDispatcherPriority.Normal,() => 
    { 
     if(RichEditBox!=null) 
     SendBox.Focus(Windows.UI.Xaml.FocusState.Keyboard); 
    }); 
} 

,但點擊後RichEditBox因此未得到focus.What的錯我的代碼?感謝

對不起,我忘了添加以下代碼:「MsgWebView.NavigateToString(」你好!世界「);」而且我發現,問題出在here.So整個代碼是這樣的:

private void SendMsg_Click(object sender, RoutedEventArgs e) 
{ 
    MsgWebView.NavigateToString("Hello World!"); 
    SendBox.Focus(Windows.UI.Xaml.FocusState.Programmatic); 

} 

如何解決這個問題? 此致敬禮。

+0

您是否試圖通過將焦點設置爲RTB以編程方式打開鍵盤?另外,這是在桌面或地鐵? – mydogisbox 2012-07-31 16:46:22

+0

[如何隱藏在EditText軟鍵盤的Windows 8 Metro應用程序?]的可能重複(http://stackoverflow.com/questions/10714431/how-to-hide-on-edittext-soft-keyboard-windows-8-metro - 應用程序) – mydogisbox 2012-07-31 16:56:02

+0

這是在Metro.Thanks爲您的答案。 – user1462922 2012-08-01 01:22:42

回答

2

您需要在FocusState(不是鍵盤)上使用Programmatic選項。

SendBox.Focus(Windows.UI.Xaml.FocusState.Programmatic); 
+0

感謝您的回答。我發現問題不是鍵盤,而是代碼:MsgWebView.NavigateToString(「Hello World!」);我在Click事件中添加了這段代碼,所以整個代碼如下所示:謝謝你我發現問題不是鍵盤,而是代碼:MsgWebView.NavigateToString(「Hello World!」);我在Click事件中添加了這段代碼,所以整個代碼如下所示:'private void SendMsg_Click(object sender ,RoutedEventArgs e) { MsgWebView.NavigateToString(「Hello World!」); SendBox.Focus(Windows.UI.Xaml.FocusState.Keyboard); }); } – user1462922 2012-08-01 01:06:10

相關問題