2013-07-25 52 views
1

這是我的程序看起來像我的編輯視框剪裁我DockPanel中

Editor Screen Shot

這是從我的程序正在運行的平板電腦的屏幕截圖。

Actual Screen Shot

的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; 
    } 
} 
+0

您應該將「非活動」視圖框的可見性設置爲「合攏」而不是「隱藏」。那麼它就不會參與佈局。 – Clemens

+0

@Celmens我故意將它設置爲隱藏。它有關閉按鈕和標誌。它的高度是50,當我運行該程序時,我從來沒有將它設置爲隱藏 –

+0

您已經設置了平板電腦屏幕的確切尺寸,但您在整個地方都會有邊距,這會增加它。 –

回答

0

爲別人所experiancing出現削波允許與WrapPanel類似的問題。我改變了從WrapPanelUniformGrid這3個按鈕的面板,並且按鈕現在正在顯示。