2012-05-09 217 views
1

當您點擊文本框時可能無法顯示系統鍵盤嗎?我創建了自定義鍵盤,只能使用文本塊,因爲這我不能刪除只是部分句子。隱藏觸摸鍵盤

回答

3

如果設置IsReadOnlytrue那麼用戶仍然可以選擇在TextBox文本複製粘貼和選擇時,操作系統不顯示軟件輸入鍵盤。您仍然可以通過代碼更改TextBox的內容。例如;

<TextBox x:Name="ExampleTextBox" 
     IsReadOnly="True" 
     Text="Initial Content" 
     GotFocus="ExampleTextBox_GotFocus" 
     /> 

而在你的代碼背後;

private void ExampleTextBox_GotFocus(object sender, System.Windows.RoutedEventArgs e) { 
    ExampleTextBox.Text += " ... focused!"; 
} 

會阻止用戶通過軟件鍵盤輸入文字,但將追加「......關注」每次他們提供焦點TextBox。有爭議的例子,但你明白了。

我建議的另一件事是重新設計TextBox。默認情況下,當設置IsReadOnly時,TextBox將提供用戶不能修改的可視提示。這裏不是這種情況。

+0

哇,很容易!謝謝。只是我想要的東西。現在我可以使用自定義鍵盤並從文本框中獲取所選文本和複製的內容!稍後再檢查並接受。再次感謝。 – 0x49D1

+0

不用擔心。您可以使用相同的技巧(使用適當的樣式)使看起來像是「TextBlock」,但用戶可以複製其內容。 – MrMDavidson

1

如果用戶觸摸鍵盤,鍵盤會變焦。

作爲開發人員,您唯一的選擇就是抓住它並將此焦點稱爲焦點,將焦點從文本框移開。

然而,這將意味着會有一個閃爍的地方默認鍵盤彈出並隱藏。

我知道這是因爲我有一個鍵盤應用程序。沒有其他辦法。

+0

但是,如果沒有焦點文本框的行爲就像文本塊那麼..例如,將不可能選擇文本的部分 – 0x49D1

+1

爲什麼你想寫一個應用程序,如果你不能找出第一個障礙?文本框有一個文本屬性。所有的操作都可以在不關注它的情況下完成。 –

+0

有許多鍵盤應用程序..有些甚至有源可在網上http://www.silverlightshow.net/items/Windows-Phone-7-Creating-Custom-Keyboard.aspx看看這個鏈接 –