1
這是我的程序看起來像我的編輯視框剪裁我DockPanel中
這是從我的程序正在運行的平板電腦的屏幕截圖。
的XAML,上述代碼是這個
<Window x:Class="DLIUnitLibrary_WPF.ConfigureWindowLandscape"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:DLIUnitLibrary_WPF"
xmlns:posButton="clr-namespace:DLIUnitLibrary_WPF.Buttons"
xmlns:UnitImagePanels="clr-namespace:DLIUnitLibrary_WPF.UnitImagePanels"
Background="{DynamicResource formBackground}"
Width="800"
Height="480"
WindowState="Maximized"
WindowStyle="None"
Loaded="Window_Loaded">
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Dictionary.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
<Viewbox Margin="10">
<DockPanel x:Name="mainView"
Height="480"
Width="800">
<local:DLIHeader DockPanel.Dock="Top"
Visibility="Hidden" />
<WrapPanel Width="125"
ItemHeight="125"
ItemWidth="125"
Margin="0,5,0,0"
DockPanel.Dock="Right"
Orientation="Vertical"
VerticalAlignment="Bottom">
<posButton:OposButton x:Name="msrButton"
Margin="5"
ImageSource="Images/msr_keymon.png" />
<posButton:OposButton x:Name="imagerButton"
Margin="5"
ImageSource="Images/barcode_keymon.png" />
<posButton:OposButton x:Name="brightButton"
Margin="5"
ImageSource="Images/brightness_keymon.png" />
</WrapPanel>
<Grid Margin="10">
<Viewbox x:Name="tablet9viewbox"
Visibility="Hidden">
<UnitImagePanels:Tablet9Image />
</Viewbox>
<Viewbox x:Name="tablet7viewbox" Visibility="Hidden">
<UnitImagePanels:Tablet7Image>
<UnitImagePanels:Tablet7Image.LayoutTransform>
<TransformGroup>
<ScaleTransform />
<SkewTransform />
<RotateTransform Angle="90" />
<TranslateTransform />
</TransformGroup>
</UnitImagePanels:Tablet7Image.LayoutTransform>
</UnitImagePanels:Tablet7Image>
</Viewbox>
</Grid>
</DockPanel>
</Viewbox>
</Window>
在tablet7屏幕分辨率800X480是。該平板電腦有一個模擬800x600,當我把它,我可以看到所有3個按鈕。
平板電腦9上的屏幕分辨率爲1024x768,並且沒有2按鈕問題,因此完美呈現它。我錯過了什麼?
編輯
我忘了我後面的代碼,我們對此深感抱歉。它不太得多的OnLoadedevent,但它是在這裏
private void Window_Loaded(object sender, RoutedEventArgs e)
{
this.mainView.Height = System.Windows.SystemParameters.PrimaryScreenHeight;
this.mainView.Width = System.Windows.SystemParameters.PrimaryScreenWidth;
switch (DLIUnitFinder.GetDLIUnit())
{
case DLIUnit.tablet7:
this.tablet7viewbox.Visibility = System.Windows.Visibility.Visible;
break;
case DLIUnit.tablet9:
this.tablet9viewbox.Visibility = System.Windows.Visibility.Visible;
break;
}
}
您應該將「非活動」視圖框的可見性設置爲「合攏」而不是「隱藏」。那麼它就不會參與佈局。 – Clemens
@Celmens我故意將它設置爲隱藏。它有關閉按鈕和標誌。它的高度是50,當我運行該程序時,我從來沒有將它設置爲隱藏 –
您已經設置了平板電腦屏幕的確切尺寸,但您在整個地方都會有邊距,這會增加它。 –