Quellcode durchsuchen

其他-调整分屏布局逻辑

ZhouJieSheng vor 2 Jahren
Ursprung
Commit
2790118aa1

+ 0 - 5
PDF Office/ViewModels/ViewContentViewModel.cs

@@ -754,11 +754,6 @@ namespace PDF_Office.ViewModels
         /// <param name="mode"></param>
         public void EnterSplitMode(SplitMode mode)
         {
-            if (mode == SplitMode.Single)
-            {
-                //单屏时清空分屏区域内容
-                region.Regions[SplitViewerRegionName].RemoveAll();
-            }
             ///通知UI层更改布局
             this.events.GetEvent<SplitEvent>().Publish(new SplitEventArgs() { Unicode = unicode, Mode = mode });
         }

+ 21 - 7
PDF Office/Views/ViewContent.xaml

@@ -290,22 +290,36 @@
                 </Grid.RowDefinitions>
                 <Grid.ColumnDefinitions>
                     <ColumnDefinition Width="*" />
-                    <ColumnDefinition Width="auto" />
+                    <ColumnDefinition Name="ColumnSplitter" Width="auto" />
                     <ColumnDefinition Name="ColumnBottom" Width="0" />
                 </Grid.ColumnDefinitions>
                 <ContentControl
                     x:Name="PDFViewerContent"
                     HorizontalAlignment="Stretch"
                     prism:RegionManager.RegionName="{Binding ViwerRegionName}" />
-                <GridSplitter
-                    Name="VerticalSplitter"
-                    Grid.Row="1"
-                    Width="12" />
                 <GridSplitter
                     Name="HorizontalSplitter"
                     Grid.Column="1"
-                    Height="12" />
-                <ContentControl   Name="SplitPDFViewer" prism:RegionManager.RegionName="{Binding SplitViewerRegionName}" />
+                    Width="12"
+                    Background="Gray"
+                    BorderThickness="0"
+                    ResizeBehavior="PreviousAndNext"
+                    ShowsPreview="True"
+                    Visibility="Collapsed" />
+                <GridSplitter
+                    Name="VerticalSplitter"
+                    Grid.Row="1"
+                    Height="12"
+                    Background="Gray"
+                    BorderThickness="0"
+                    ResizeBehavior="PreviousAndNext"
+                    ShowsPreview="True"
+                    Visibility="Collapsed" />
+                <ContentControl
+                    Name="SplitPDFViewer"
+                    Grid.Row="2"
+                    Grid.Column="2"
+                    prism:RegionManager.RegionName="{Binding SplitViewerRegionName}" />
             </Grid>
             <ScrollViewer
                 Name="Scroller"

+ 9 - 10
PDF Office/Views/ViewContent.xaml.cs

@@ -47,21 +47,20 @@ namespace PDF_Office.Views
         {
             switch (e.Mode)
             {
-                case EventAggregators.SplitMode.Vertical:
-                    //垂直分屏
+                case EventAggregators.SplitMode.Horizontal:
+                    //水平分屏  上下
                     HorizontalSplitter.Visibility = Visibility.Collapsed;
                     VerticalSplitter.Visibility = Visibility.Visible;
-                    RowRight.Height = new GridLength(0);
-                    ColumnBottom.Width = new GridLength(0, GridUnitType.Star);
+                    RowRight.Height = new GridLength(1, GridUnitType.Star);
+                    ColumnBottom.Width = new GridLength(0);
                     Grid.SetColumn(SplitPDFViewer, 0);
                     Grid.SetRow(SplitPDFViewer, 2);
-
                     break;
-                case EventAggregators.SplitMode.Horizontal:
+                case EventAggregators.SplitMode.Vertical:
                     HorizontalSplitter.Visibility = Visibility.Visible;
                     VerticalSplitter.Visibility = Visibility.Collapsed;
-                    RowRight.Height = new GridLength(0, GridUnitType.Star);
-                    ColumnBottom.Width = new GridLength(0);
+                    RowRight.Height = new GridLength(0);
+                    ColumnBottom.Width = new GridLength(1, GridUnitType.Star);
                     Grid.SetColumn(SplitPDFViewer, 2);
                     Grid.SetRow(SplitPDFViewer, 0);
                     break;
@@ -70,8 +69,8 @@ namespace PDF_Office.Views
                     //退出分屏模式
                     HorizontalSplitter.Visibility = Visibility.Collapsed;
                     VerticalSplitter.Visibility = Visibility.Collapsed;
-                    RowRight.Height = new GridLength(0);
-                    ColumnBottom.Width = new GridLength(0);
+                    RowRight.Height = new GridLength(0,GridUnitType.Star);
+                    ColumnBottom.Width = new GridLength(0,GridUnitType.Star);
                     break;
             }
             GridViewer.UpdateLayout();