0
我有一個彈出窗口,在MainPage上打開幾個文本框。當您將注意力集中在較低的文本框時,鍵盤會將其遮擋住。通常文本框滑入視圖。我不知道爲什麼這裏沒有發生。wp7彈出窗口阻止彈出文本框
請幫忙!
<UserControl x:Class="Controls.EditControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:SampleData="clr-namespace:SampleData"
mc:Ignorable="d"
FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}"
Height="800" Width="480"
d:DataContext="{d:DesignData ../SampleData/sampleEditPopup.xaml}">
<Grid x:Name="LayoutRoot" Background="#FF000000" Opacity="0.995">
<StackPanel Margin="0,20,0,0" Orientation="Horizontal" VerticalAlignment="Top">
<TextBlock TextWrapping="Wrap" Text="Name" HorizontalAlignment="Left" Height="26" Margin="15,10,0,10" Width="110" TextAlignment="Right"/>
<TextBox x:Name="tb_name"
TextWrapping="Wrap"
Width="340" Height="75"
Margin="10,13,15,12"
InputScope="Text" MaxLength="1000"
Text="{Binding Title, Mode=TwoWay}"/>
</StackPanel>
<StackPanel Orientation="Horizontal" Margin="0,150,0,0" VerticalAlignment="Top">
<TextBlock TextWrapping="Wrap" Text="Description" HorizontalAlignment="Left" Height="26" Margin="15,40,0,10" Width="110" VerticalAlignment="Top" TextAlignment="Right"/>
<TextBox x:Name="tb_description"
TextWrapping="Wrap"
Width="340" Height="254"
Margin="10,13,15,12"
InputScope="Text" MaxLength="1000"
Text="{Binding Description, Mode=TwoWay}"/>
</StackPanel>
</Grid>
,這裏是打開它的代碼:從UX看來,我會大力推薦反對任何有部分彈出/覆蓋有
EditControl ec = new EditControl();
ec.Title = cm.Title;
ec.Description = cm.Description;
//sets appbar icons for accepting values
setEditIcons();
Popup edit = new Popup() { Child = ec, Tag = this };
edit.Closed += new EventHandler(edit_Closed);
edit.IsOpen = true;
我明白你的觀點。但導航到另一個頁面,以改變一個對象的名稱和描述看起來像矯枉過正。我已經處理了所有其他條件。如果我導航到另一個頁面,那麼我不得不擔心將需要的對象和值傳遞給該頁面,再加上當我回來時,我必須確保顯示正確的信息。也許這是我唯一的選擇,但似乎有點荒謬。 – prak 2012-02-18 23:39:53
這就是People Hub爲重命名聯繫人所做的事,辦公室就是這樣做的,這就是其他所有事情所做的。如果您是開發人員,請不要在提供適當UX用戶注意的情況下在Metro中「創新」。除非您已將您的意見置於地鐵設計語言原則之中,否則應爭取與其他應用程序和操作系統保持一致。用戶會因爲未能設計Metroesque應用程序而降低您的應用程序。只是我的0.02美元。 – JustinAngel 2012-02-19 00:11:18
我已經通過了地鐵指導方針,而且我所做的與人羣中心和其他應用程序所做的不同。我不是「創新」任何我使用的內置控制器。不相信我?這裏是來自指南的剪輯「對於臨時UI,例如登錄屏幕,您可以使用Silverlight Popup控件...」http://msdn.microsoft.com/en-us/library/hh202911%28v=vs .92%29.aspx ...無論如何,我能夠通過在xaml中創建而不是在後面的代碼來使鍵盤正常工作。 – prak 2012-02-19 03:00:26