0

我正在爲Windows 8(WInRT)開發,並且在設置魅力方面存在問題。彈出式設置基於Microsoft SDK設置魅力。設置面板是彈出式菜單。內容由ScrollViewer - > Grid - > StackPanel包裝。在StackPanel中,我有輸入字段。當我試圖填充屏幕鍵盤上的最後一個覆蓋它,我不能看到字段和不能滾動到它。有沒有辦法看到它並自動滾動到它?WinRT設置魅力。屏幕鍵盤上覆蓋的元素

回答

1

似乎Windows 8上的彈出窗口與Windows Phone上的彈出窗口有相同的問題,因爲當您將TextBox放在其中一個窗口上時 - 它不會與所有其他內容一起上推它不在彈出窗口中。

我的解決方案是不對輸入字段使用彈出窗口,而是使用可以自己管理的佈局。

默認情況下,應用程序的可視根目錄中有一個Frame控件。你可以修改它,例如把你自己的UserControl放在那裏(我通常稱之爲AppShell),它具有所有頁面使用的Frame,你可以有彈出層,登錄屏幕,擴展初始屏幕等。

爲了解決你的問題,你需要把你的魅力的用戶界面,而不是在彈出窗口中的這種圖層。然後,當屏幕鍵盤會妨礙TextBox的視圖時,將所有UI拉起來的內置機制應該再次開始工作。

*編輯

一個簡單的解決辦法是,以確保您的設置面板彈出在你的視覺樹父 - 例如將它作爲子元素添加到您的應用或頁面的根網格中。事實證明,在這種情況下,當OSK出現時,其內容會被推高。

0

看看這個post

這是一個彈出式包裝(打開用戶控件到彈出窗口),其採用的出現鍵盤的保養和調整彈出(因此用戶控制)相應的大小。