Ver código fonte

底部工具栏-展开视图按钮,同步属性栏宽度变化

ZhouJieSheng 1 ano atrás
pai
commit
ac6d140078

+ 6 - 3
PDF Office/ViewModels/BOTA/BOTAContentViewModel.cs

@@ -219,9 +219,12 @@ namespace PDF_Master.ViewModels.BOTA
             if(Settings.Default.AppProperties.InitialVIew.RememberBOTA)
             {
                 var info = SettingHelper.GetFileInfo(pdfview.Document.FilePath);
-                SelectedIndex = info.BOTASelectedInex;
-                EnterSelectedBar(info.BOTASelectedTab);
-                viewContentViewModel.OpenBOTA = true;
+                if (info != null)
+                {
+                    SelectedIndex = info.BOTASelectedInex;
+                    EnterSelectedBar(info.BOTASelectedTab);
+                    viewContentViewModel.OpenBOTA = true;
+                }
             }
         }
 

+ 11 - 3
PDF Office/ViewModels/BottomToolContentViewModel.cs

@@ -806,6 +806,11 @@ namespace PDF_Master.ViewModels
                     RightPanelEnable = true;
                 }
             }
+            if(e.PropertyName== "IsPropertyOpen")
+            {
+                //监听的属性面板的变化
+                IsShowViewModular = ViewContentViewModel.IsPropertyOpen;
+            }
         }
 
         private void GetModeView(ViewMode mode)
@@ -939,8 +944,12 @@ namespace PDF_Master.ViewModels
                     CurrentPage = PDFViewer.CurrentIndex + 1;
                 }
                 CurrentZoom = PDFViewer.ZoomFactor * 100;
-                PDFViewer.InfoChanged += PDFViewer_InfoChanged;
+                PDFViewer.InfoChanged += PDFViewer_InfoChanged;
+            }
 
+            //避免重复注册
+            if (GlobalCommands.FirstPageCommand.RegisteredCommands.Count < 1)
+            {
                 //注册成全局命令
                 GlobalCommands.FirstPageCommand.RegisterCommand(FirstPageCommand);
                 GlobalCommands.LastPageCommand.RegisterCommand(LastPageCommand);
@@ -954,9 +963,8 @@ namespace PDF_Master.ViewModels
                 GlobalCommands.DoublePageCommand.RegisterCommand(new DelegateCommand(() => { IsDoubleView = true; }));
                 GlobalCommands.ZoomInCommand.RegisterCommand(ZoomInCommand);
                 GlobalCommands.ZoomOutPageCommand.RegisterCommand(ZoomOutCommand);
-                GlobalCommands.RealSizeCommand.RegisterCommand(new DelegateCommand(() => { ZoomToRealSize(); }));
+                GlobalCommands.RealSizeCommand.RegisterCommand(new DelegateCommand(() => { ZoomToRealSize(); }));
             }
-
         }
 
         public bool IsNavigationTarget(NavigationContext navigationContext)

+ 2 - 2
PDF Office/ViewModels/Dialog/ToolsDialogs/MergeDialogViewModel.cs

@@ -66,7 +66,7 @@ namespace PDF_Master.ViewModels.Dialog.ToolsDialogs
         public void OnDialogOpened(IDialogParameters parameters)
         {
             CPDFViewer pdfViewer = null;
-            if (parameters.TryGetValue<CPDFViewer>(ParameterNames.PDFViewer, out pdfViewer))
+            if (parameters.TryGetValue<CPDFViewer>(ParameterNames.PDFViewer, out pdfViewer)&&pdfViewer!=null&&pdfViewer.Document!=null)
             {
                 VerifyPasswordResult condition = SecurityHelper.VerifyPasswordByPasswordKind(pdfViewer.Document, EnumPasswordKind.StatusPermissionsPassword, dialogs);
                 if (condition.IsDiscryptied)
@@ -87,7 +87,7 @@ namespace PDF_Master.ViewModels.Dialog.ToolsDialogs
                 currentLoadedPassword = pdfViewer.Document.Password;
             }
 
-            if (pdfViewer != null)
+            if (pdfViewer != null&&pdfViewer.Document!=null)
             {
                 CurrentFilePath = pdfViewer.Document.FilePath;
 

+ 8 - 1
PDF Office/ViewModels/HomePanel/PDFTools/QuickToolsContentViewModel.cs

@@ -134,11 +134,18 @@ namespace PDF_Master.ViewModels.HomePanel.PDFTools
             //{
             //    //dlg.Multiselect = true;
             //}
-            if (toolItem.FnType == PDFFnType.ImageToPDF|| toolItem.FnType == PDFFnType.Merge)
+            if (toolItem.FnType == PDFFnType.ImageToPDF)
             {
                 dlg.Multiselect = true;
                 dlg.Filter = "Picture|*.png;*.PNG;*.jpg;*.JPG;*bmp;*jpeg;*gif;*tiff;";
             }
+            else if(toolItem.FnType == PDFFnType.Merge)
+            {
+                dlg.Multiselect = true;
+                dlg.Filter = Properties.Resources.imageex.ToLower() + "|*";
+            }
+
+
             if (dlg.ShowDialog() == System.Windows.Forms.DialogResult.OK)
             {
                 CPDFViewer viewer = new CPDFViewer();

+ 3 - 2
PDF Office/ViewModels/ViewContentViewModel.cs

@@ -925,7 +925,6 @@ namespace PDF_Master.ViewModels
             {
                 //自动保存仅针对已经有文件路径的文档
                 saveFile();
-                App.Current.MainWindow.Activate();
             }
         }
 
@@ -2515,8 +2514,10 @@ namespace PDF_Master.ViewModels
                 }
                 else
                 {
-                    //文件被占用 保存失败时
+                    //弹窗前 激活主窗体
+                    App.Current.MainWindow.Activate();
                     AlertsMessage alertsMessage = new AlertsMessage();
+                    //文件被占用 保存失败时
                     alertsMessage.ShowDialog("", "文件被占用,需要另存为", "Cancel", "OK");
                     if (alertsMessage.result == ContentResult.Ok)
                         return saveAsFile();

+ 483 - 217
PDF Office/Views/Dialog/ToolsDialogs/MergeDialog.xaml

@@ -1,72 +1,88 @@
-<UserControl x:Class="PDF_Master.Views.Dialog.ToolsDialogs.MergeDialog"
-             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
-             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
-             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
-             xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
-             xmlns:local="clr-namespace:PDF_Master.Views.Dialog.PageEditDialogs"
-             mc:Ignorable="d" 
-             xmlns:prism="http://prismlibrary.com/" xmlns:customcontrol="clr-namespace:PDF_Master.CustomControl" xmlns:dataconvert="clr-namespace:PDF_Master.DataConvert" xmlns:toolsdialogs="clr-namespace:PDF_Master.ViewModels.Dialog.ToolsDialogs" xmlns:i="http://schemas.microsoft.com/xaml/behaviors" d:DataContext="{d:DesignInstance Type=toolsdialogs:MergeDialogViewModel}"
-             prism:Dialog.WindowStyle="{StaticResource DialogWindowStyle}"
-             Width="818"
-             Height="600"
-             Loaded="UserControl_Loaded"
-             >
+<UserControl
+    x:Class="PDF_Master.Views.Dialog.ToolsDialogs.MergeDialog"
+    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+    xmlns:customcontrol="clr-namespace:PDF_Master.CustomControl"
+    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+    xmlns:dataconvert="clr-namespace:PDF_Master.DataConvert"
+    xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
+    xmlns:local="clr-namespace:PDF_Master.Views.Dialog.PageEditDialogs"
+    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+    xmlns:prism="http://prismlibrary.com/"
+    xmlns:toolsdialogs="clr-namespace:PDF_Master.ViewModels.Dialog.ToolsDialogs"
+    Width="818"
+    Height="600"
+    d:DataContext="{d:DesignInstance Type=toolsdialogs:MergeDialogViewModel}"
+    prism:Dialog.WindowStyle="{StaticResource DialogWindowStyle}"
+    Loaded="UserControl_Loaded"
+    mc:Ignorable="d">
     <UserControl.Resources>
-        <dataconvert:IndexConverter x:Key="IndexConverter"/>
+        <dataconvert:IndexConverter x:Key="IndexConverter" />
         <dataconvert:BoolToVisible x:Key="BoolToVisible" />
         <dataconvert:UnVisivleConvert x:Key="UnVisivleConvert" />
-        <dataconvert:ListCountToVisible x:Key="ListCountToVisible"/>
-        <dataconvert:MergeListCountToBool x:Key="MergeListCountToBool"/>
-        <dataconvert:UnVisibleToBoolConvert x:Key="UnVisibleToBoolConvert"/>
+        <dataconvert:ListCountToVisible x:Key="ListCountToVisible" />
+        <dataconvert:MergeListCountToBool x:Key="MergeListCountToBool" />
+        <dataconvert:UnVisibleToBoolConvert x:Key="UnVisibleToBoolConvert" />
         <PathGeometry x:Key="Ic_ClearButtonPath" Figures="M6 1.75H10V0.25H6V1.75ZM1 4.25H2.25V15C2.25 15.4142 2.58579 15.75 3 15.75H13C13.4142 15.75 13.75 15.4142 13.75 15V4.25H15V2.75H1V4.25ZM3.75 14.25V4.25H12.25V14.25H3.75ZM7.25 6.5V11.5H8.75V6.5H7.25Z" />
         <PathGeometry x:Key="Ic_DeleteButtonPath" Figures="M8 15C11.866 15 15 11.866 15 8C15 4.13401 11.866 1 8 1C4.13401 1 1 4.13401 1 8C1 11.866 4.13401 15 8 15ZM11.5303 5.53038L9.06069 8L11.5303 10.4696L10.4697 11.5303L8.00002 9.06066L5.53033 11.5303L4.46967 10.4697L6.93936 8L4.46967 5.53033L5.53033 4.46967L8.00002 6.93934L10.4697 4.46971L11.5303 5.53038Z" />
-        <SolidColorBrush x:Key="Item.MouseOver.Background" Color="#1F26A0DA"/>
-        <SolidColorBrush x:Key="Item.MouseOver.Border" Color="#a826A0Da"/>
-        <SolidColorBrush x:Key="Item.SelectedInactive.Background" Color="#3DDADADA"/>
-        <SolidColorBrush x:Key="Item.SelectedInactive.Border" Color="#FFDADADA"/>
-        <SolidColorBrush x:Key="Item.SelectedActive.Background" Color="#3D26A0DA"/>
-        <SolidColorBrush x:Key="Item.SelectedActive.Border" Color="#FF26A0DA"/>
+        <SolidColorBrush x:Key="Item.MouseOver.Background" Color="#1F26A0DA" />
+        <SolidColorBrush x:Key="Item.MouseOver.Border" Color="#a826A0Da" />
+        <SolidColorBrush x:Key="Item.SelectedInactive.Background" Color="#3DDADADA" />
+        <SolidColorBrush x:Key="Item.SelectedInactive.Border" Color="#FFDADADA" />
+        <SolidColorBrush x:Key="Item.SelectedActive.Background" Color="#3D26A0DA" />
+        <SolidColorBrush x:Key="Item.SelectedActive.Border" Color="#FF26A0DA" />
         <Style x:Key="ListViewItemStyle1" TargetType="{x:Type ListViewItem}">
-            <Setter Property="SnapsToDevicePixels" Value="True"/>
-            <Setter Property="Padding" Value="0,2,0,0"/>
-            <Setter Property="HorizontalContentAlignment" Value="{Binding HorizontalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}"/>
-            <Setter Property="VerticalContentAlignment" Value="{Binding VerticalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}"/>
-            <Setter Property="Background" Value="Transparent"/>
-            <Setter Property="BorderBrush" Value="Transparent"/>
-            <Setter Property="BorderThickness" Value="0"/>
-            <Setter Property="FocusVisualStyle" Value="{StaticResource FocusVisual}"/>
+            <Setter Property="SnapsToDevicePixels" Value="True" />
+            <Setter Property="Padding" Value="0,2,0,0" />
+            <Setter Property="HorizontalContentAlignment" Value="{Binding HorizontalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}" />
+            <Setter Property="VerticalContentAlignment" Value="{Binding VerticalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}" />
+            <Setter Property="Background" Value="Transparent" />
+            <Setter Property="BorderBrush" Value="Transparent" />
+            <Setter Property="BorderThickness" Value="0" />
+            <Setter Property="FocusVisualStyle" Value="{StaticResource FocusVisual}" />
             <Setter Property="Template">
                 <Setter.Value>
                     <ControlTemplate TargetType="{x:Type ListViewItem}">
-                        <Border Grid.Row="2" CornerRadius="8" x:Name="Bd" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Padding="{TemplateBinding Padding}" SnapsToDevicePixels="true">
-                            <ContentPresenter  HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
+                        <Border
+                            x:Name="Bd"
+                            Grid.Row="2"
+                            Padding="{TemplateBinding Padding}"
+                            Background="{TemplateBinding Background}"
+                            BorderBrush="{TemplateBinding BorderBrush}"
+                            BorderThickness="{TemplateBinding BorderThickness}"
+                            CornerRadius="8"
+                            SnapsToDevicePixels="true">
+                            <ContentPresenter
+                                HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
+                                VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
+                                SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
                         </Border>
                         <ControlTemplate.Triggers>
                             <MultiTrigger>
                                 <MultiTrigger.Conditions>
-                                    <Condition Property="IsMouseOver" Value="True"/>
+                                    <Condition Property="IsMouseOver" Value="True" />
                                 </MultiTrigger.Conditions>
-                                <Setter Property="Background" TargetName="Bd" Value="{StaticResource color.item-state.hov.bg}"/>
-                                <Setter Property="BorderBrush" TargetName="Bd" Value="{StaticResource color.item-state.hov.bg}"/>
+                                <Setter TargetName="Bd" Property="Background" Value="{StaticResource color.item-state.hov.bg}" />
+                                <Setter TargetName="Bd" Property="BorderBrush" Value="{StaticResource color.item-state.hov.bg}" />
                             </MultiTrigger>
                             <MultiTrigger>
                                 <MultiTrigger.Conditions>
-                                    <Condition Property="Selector.IsSelectionActive" Value="False"/>
-                                    <Condition Property="IsSelected" Value="True"/>
+                                    <Condition Property="Selector.IsSelectionActive" Value="False" />
+                                    <Condition Property="IsSelected" Value="True" />
                                 </MultiTrigger.Conditions>
-                                <Setter Property="Background" TargetName="Bd" Value="{StaticResource Item.SelectedInactive.Background}"/>
-                                <Setter Property="BorderBrush" TargetName="Bd" Value="{StaticResource Item.SelectedInactive.Border}"/>
+                                <Setter TargetName="Bd" Property="Background" Value="{StaticResource Item.SelectedInactive.Background}" />
+                                <Setter TargetName="Bd" Property="BorderBrush" Value="{StaticResource Item.SelectedInactive.Border}" />
                             </MultiTrigger>
                             <MultiTrigger>
                                 <MultiTrigger.Conditions>
-                                    <Condition Property="Selector.IsSelectionActive" Value="True"/>
-                                    <Condition Property="IsSelected" Value="True"/>
+                                    <Condition Property="Selector.IsSelectionActive" Value="True" />
+                                    <Condition Property="IsSelected" Value="True" />
                                 </MultiTrigger.Conditions>
-                                <Setter Property="Background" TargetName="Bd" Value="{StaticResource color.item-state.hov.bg}"/>
-                                <Setter Property="BorderBrush" TargetName="Bd" Value="{StaticResource color.item-state.hov.bg}"/>
+                                <Setter TargetName="Bd" Property="Background" Value="{StaticResource color.item-state.hov.bg}" />
+                                <Setter TargetName="Bd" Property="BorderBrush" Value="{StaticResource color.item-state.hov.bg}" />
                             </MultiTrigger>
                             <Trigger Property="IsEnabled" Value="False">
-                                <Setter Property="TextElement.Foreground" TargetName="Bd" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/>
+                                <Setter TargetName="Bd" Property="TextElement.Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}" />
                             </Trigger>
                         </ControlTemplate.Triggers>
                     </ControlTemplate>
@@ -76,116 +92,229 @@
     </UserControl.Resources>
     <Grid Background="{StaticResource color.sys.layout.anti}">
         <Grid.ColumnDefinitions>
-            <ColumnDefinition Width="16"/>
-            <ColumnDefinition Width="*"/>
-            <ColumnDefinition Width="16"/>
-            <ColumnDefinition Width="0"/>
+            <ColumnDefinition Width="16" />
+            <ColumnDefinition Width="*" />
+            <ColumnDefinition Width="16" />
+            <ColumnDefinition Width="0" />
         </Grid.ColumnDefinitions>
         <Grid.RowDefinitions>
-            <RowDefinition Height="16"/>
-            <RowDefinition Height="20"/>
-            <RowDefinition Height="8"/>
-            <RowDefinition Height="*"/>
-            <RowDefinition Height="16"/>
-            <RowDefinition Height="50"/>
-            <RowDefinition Height="16"/>
+            <RowDefinition Height="16" />
+            <RowDefinition Height="20" />
+            <RowDefinition Height="8" />
+            <RowDefinition Height="*" />
+            <RowDefinition Height="16" />
+            <RowDefinition Height="50" />
+            <RowDefinition Height="16" />
         </Grid.RowDefinitions>
 
-        <Border Grid.Column="1" Grid.Row="1"  Grid.RowSpan="2" Padding="50,6,50,6" Visibility="{Binding Visibility, Converter={StaticResource UnVisivleConvert}, ElementName=NoFileStackPanel}">
+        <Border
+            Grid.Row="1"
+            Grid.RowSpan="2"
+            Grid.Column="1"
+            Padding="50,6,50,6"
+            Visibility="{Binding Visibility, Converter={StaticResource UnVisivleConvert}, ElementName=NoFileStackPanel}">
             <Grid>
                 <Grid.ColumnDefinitions>
-                    <ColumnDefinition Width="429"/>
-                    <ColumnDefinition Width="160"/>
-                    <ColumnDefinition Width="*"/>
+                    <ColumnDefinition Width="429" />
+                    <ColumnDefinition Width="160" />
+                    <ColumnDefinition Width="*" />
                 </Grid.ColumnDefinitions>
-                <TextBlock x:Name="TitleFileName" FontFamily="Segoe UI" FontSize="12" FontWeight="Bold" Foreground="{StaticResource color.sys.text.neutral.lv1}"/>
-                <TextBlock x:Name="TitlePageRange" Grid.Column="1" FontFamily="Segoe UI" FontSize="12" FontWeight="Bold" Foreground="{StaticResource color.sys.text.neutral.lv1}"/>
-                <TextBlock x:Name="TitleSize" Grid.Column="2" HorizontalAlignment="Center"  FontFamily="Segoe UI" FontSize="12" FontWeight="Bold" Foreground="{StaticResource color.sys.text.neutral.lv1}"/>
+                <TextBlock
+                    x:Name="TitleFileName"
+                    FontFamily="Segoe UI"
+                    FontSize="12"
+                    FontWeight="Bold"
+                    Foreground="{StaticResource color.sys.text.neutral.lv1}" />
+                <TextBlock
+                    x:Name="TitlePageRange"
+                    Grid.Column="1"
+                    FontFamily="Segoe UI"
+                    FontSize="12"
+                    FontWeight="Bold"
+                    Foreground="{StaticResource color.sys.text.neutral.lv1}" />
+                <TextBlock
+                    x:Name="TitleSize"
+                    Grid.Column="2"
+                    HorizontalAlignment="Center"
+                    FontFamily="Segoe UI"
+                    FontSize="12"
+                    FontWeight="Bold"
+                    Foreground="{StaticResource color.sys.text.neutral.lv1}" />
             </Grid>
         </Border>
-        <Border Grid.Column="1" Grid.Row="3">
-            <Grid AllowDrop="True" Background="{StaticResource color.sys.layout.anti}"
-                PreviewDrop="Grid_Drop"
+        <Border Grid.Row="3" Grid.Column="1">
+            <Grid
+                AllowDrop="True"
+                Background="{StaticResource color.sys.layout.anti}"
                 PreviewDragEnter="Grid_DragEnter"
-                PreviewDragOver="Grid_DragOver"
                 PreviewDragLeave="Grid_DragLeave"
-                  >
-                <StackPanel 
-                    x:Name="NoFileStackPanel" HorizontalAlignment="Center" VerticalAlignment="Center"  Visibility="{Binding MergeObjectlist.Count, Converter={StaticResource ListCountToVisible}}" >
+                PreviewDragOver="Grid_DragOver"
+                PreviewDrop="Grid_Drop">
+                <StackPanel
+                    x:Name="NoFileStackPanel"
+                    HorizontalAlignment="Center"
+                    VerticalAlignment="Center"
+                    Visibility="{Binding MergeObjectlist.Count, Converter={StaticResource ListCountToVisible}}">
                     <customcontrol:ImageButton
-                                Height="128" Width="128" IconHeight="128" IconWidth="128"  
-                                Icon="pack://application:,,,/PDF Master;component/Resources/Dialog/AddImage.png"  
-                                IconPress="pack://application:,,,/PDF Master;component/Resources/Dialog/AddImageSuspend.png"  
-                                IconMouseOver="pack://application:,,,/PDF Master;component/Resources/Dialog/AddImageSuspend.png"   Command="{Binding AddFilesCommand}" CommandParameter="0"/>
-                    <TextBlock Width="418" Margin="0,2,0,0" x:Name="NoFileText"
-                               FontSize="12" FontFamily="Segoe UI" HorizontalAlignment="Center" FontWeight="Regular"
-                               Foreground="{StaticResource color.sys.text.neutral.lv3}"
-                               TextAlignment="Center" VerticalAlignment="Center" TextWrapping="Wrap"/>
+                        Width="128"
+                        Height="128"
+                        Command="{Binding AddFilesCommand}"
+                        CommandParameter="0"
+                        Icon="pack://application:,,,/PDF Master;component/Resources/Dialog/AddImage.png"
+                        IconHeight="128"
+                        IconMouseOver="pack://application:,,,/PDF Master;component/Resources/Dialog/AddImageSuspend.png"
+                        IconPress="pack://application:,,,/PDF Master;component/Resources/Dialog/AddImageSuspend.png"
+                        IconWidth="128" />
+                    <TextBlock
+                        x:Name="NoFileText"
+                        Width="418"
+                        Margin="0,2,0,0"
+                        HorizontalAlignment="Center"
+                        VerticalAlignment="Center"
+                        FontFamily="Segoe UI"
+                        FontSize="12"
+                        FontWeight="Regular"
+                        Foreground="{StaticResource color.sys.text.neutral.lv3}"
+                        TextAlignment="Center"
+                        TextWrapping="Wrap" />
                 </StackPanel>
-                <ListView x:Name="MergeView" AllowDrop="True"
-                ItemContainerStyle="{StaticResource ListViewItemStyle1}"
-                BorderThickness="0"
-                Visibility="{Binding Visibility, Converter={StaticResource UnVisivleConvert}, ElementName=NoFileStackPanel}"          
-                Drop="MergeView_Drop"
-                DragEnter="MergeView_DragEnter"
-                DragOver="MergeView_DragOver"
-                DragLeave="MergeView_DragLeave"
-                PreviewMouseMove="MergeView_PreviewMouseMove" 
-                ItemsSource="{Binding MergeObjectlist}"
-                ScrollViewer.HorizontalScrollBarVisibility="Disabled"
-                HorizontalContentAlignment="Stretch">
+                <ListView
+                    x:Name="MergeView"
+                    HorizontalContentAlignment="Stretch"
+                    AllowDrop="True"
+                    BorderThickness="0"
+                    DragEnter="MergeView_DragEnter"
+                    DragLeave="MergeView_DragLeave"
+                    DragOver="MergeView_DragOver"
+                    Drop="MergeView_Drop"
+                    ItemContainerStyle="{StaticResource ListViewItemStyle1}"
+                    ItemsSource="{Binding MergeObjectlist}"
+                    PreviewMouseMove="MergeView_PreviewMouseMove"
+                    ScrollViewer.HorizontalScrollBarVisibility="Disabled"
+                    Visibility="{Binding Visibility, Converter={StaticResource UnVisivleConvert}, ElementName=NoFileStackPanel}">
                     <ListView.ItemTemplate>
-                        <DataTemplate  >
-                            <Border x:Name="BackgroundBorder" Background="Transparent" CornerRadius="8">
-                                <StackPanel  >
-                                    <Line  X1="0"  X2="{Binding ActualWidth, ElementName=ContentPanel}" HorizontalAlignment="Stretch" StrokeThickness="1" Stroke="{StaticResource color.item-state.hov.bg}" VerticalAlignment="Bottom"/>
-                                    <Grid x:Name="ContentPanel" Height="76" >
+                        <DataTemplate>
+                            <Border
+                                x:Name="BackgroundBorder"
+                                Background="Transparent"
+                                CornerRadius="8">
+                                <StackPanel>
+                                    <Line
+                                        HorizontalAlignment="Stretch"
+                                        VerticalAlignment="Bottom"
+                                        Stroke="{StaticResource color.item-state.hov.bg}"
+                                        StrokeThickness="1"
+                                        X1="0"
+                                        X2="{Binding ActualWidth, ElementName=ContentPanel}" />
+                                    <Grid x:Name="ContentPanel" Height="76">
                                         <Grid.ColumnDefinitions>
-                                            <ColumnDefinition Width="41"/>
-                                            <ColumnDefinition Width="60"/>
-                                            <ColumnDefinition Width="8"/>
-                                            <ColumnDefinition Width="372"/>
-                                            <ColumnDefinition Width="auto"/>
-                                            <ColumnDefinition Width="16"/>
-                                            <ColumnDefinition Width="64"/>
-                                            <ColumnDefinition Width="16"/>
-                                            <ColumnDefinition Width="16"/>
-                                            <ColumnDefinition Width="43"/>
+                                            <ColumnDefinition Width="41" />
+                                            <ColumnDefinition Width="60" />
+                                            <ColumnDefinition Width="8" />
+                                            <ColumnDefinition Width="372" />
+                                            <ColumnDefinition Width="auto" />
+                                            <ColumnDefinition Width="16" />
+                                            <ColumnDefinition Width="64" />
+                                            <ColumnDefinition Width="16" />
+                                            <ColumnDefinition Width="16" />
+                                            <ColumnDefinition Width="43" />
                                         </Grid.ColumnDefinitions>
-                                        <Line   Margin="0,0,0,0" Grid.ColumnSpan="10" Visibility="{Binding IsForward, Converter={StaticResource BoolToVisible}}" X1="0"  X2="{Binding ActualWidth, ElementName=ContentPanel}" HorizontalAlignment="Stretch" VerticalAlignment="Bottom" StrokeThickness="1" Stroke="{StaticResource color.sys.layout.accent}" />
+                                        <Line
+                                            Grid.ColumnSpan="10"
+                                            Margin="0,0,0,0"
+                                            HorizontalAlignment="Stretch"
+                                            VerticalAlignment="Bottom"
+                                            Stroke="{StaticResource color.sys.layout.accent}"
+                                            StrokeThickness="1"
+                                            Visibility="{Binding IsForward, Converter={StaticResource BoolToVisible}}"
+                                            X1="0"
+                                            X2="{Binding ActualWidth, ElementName=ContentPanel}" />
 
-                                        <Line Margin="0,0,0,0" Grid.ColumnSpan="10" Visibility="{Binding IsBackwards, Converter={StaticResource BoolToVisible}}"  X1="0"  X2="{Binding ActualWidth, ElementName=ContentPanel}" HorizontalAlignment="Stretch" VerticalAlignment="Top" StrokeThickness="1" Stroke="{StaticResource color.sys.layout.accent}" />
+                                        <Line
+                                            Grid.ColumnSpan="10"
+                                            Margin="0,0,0,0"
+                                            HorizontalAlignment="Stretch"
+                                            VerticalAlignment="Top"
+                                            Stroke="{StaticResource color.sys.layout.accent}"
+                                            StrokeThickness="1"
+                                            Visibility="{Binding IsBackwards, Converter={StaticResource BoolToVisible}}"
+                                            X1="0"
+                                            X2="{Binding ActualWidth, ElementName=ContentPanel}" />
 
-                                        <TextBlock Text="{Binding ItemIndex}"
-                                 VerticalAlignment="Center"  HorizontalAlignment="Center"/>
-                                        <Image Margin="8" Grid.Column="1"  HorizontalAlignment="Stretch" VerticalAlignment="Center" Source="{Binding DocThumbnail}"  Stretch="Uniform"  />
-                                        <StackPanel Grid.Column="3" HorizontalAlignment="Stretch" VerticalAlignment="Center">
-                                            <TextBlock Text="{Binding DocName}" FontFamily="Segoe UI" FontSize="14" FontWeight="Regular" Foreground="{StaticResource color.sys.text.neutral.lv1}"  TextTrimming="CharacterEllipsis"/>
-                                            <TextBlock Text="{Binding DocPageCount}"  FontFamily="Segoe UI" FontSize="14" FontWeight="Regular" Foreground="{StaticResource color.sys.text.neutral.lv3}"/>
+                                        <TextBlock
+                                            HorizontalAlignment="Center"
+                                            VerticalAlignment="Center"
+                                            Text="{Binding ItemIndex}" />
+                                        <Image
+                                            Grid.Column="1"
+                                            Margin="8"
+                                            HorizontalAlignment="Stretch"
+                                            VerticalAlignment="Center"
+                                            Source="{Binding DocThumbnail}"
+                                            Stretch="Uniform" />
+                                        <StackPanel
+                                            Grid.Column="3"
+                                            HorizontalAlignment="Stretch"
+                                            VerticalAlignment="Center">
+                                            <TextBlock
+                                                FontFamily="Segoe UI"
+                                                FontSize="14"
+                                                FontWeight="Regular"
+                                                Foreground="{StaticResource color.sys.text.neutral.lv1}"
+                                                Text="{Binding DocName}"
+                                                TextTrimming="CharacterEllipsis" />
+                                            <TextBlock
+                                                FontFamily="Segoe UI"
+                                                FontSize="14"
+                                                FontWeight="Regular"
+                                                Foreground="{StaticResource color.sys.text.neutral.lv3}"
+                                                Text="{Binding DocPageCount}" />
                                         </StackPanel>
-                                        <StackPanel Grid.Column="4" HorizontalAlignment="Stretch" VerticalAlignment="Center">
-                                            <customcontrol:WritableComboBox SelectedIndex="0" Width="150" Height="30" MaxPageRange="{Binding SDKPageCount}" PageIndexList="{Binding SetPageRange, Mode=TwoWay}" Text="{Binding SetPageRangeStr,Mode=TwoWay}"/>
+                                        <StackPanel
+                                            Grid.Column="4"
+                                            HorizontalAlignment="Stretch"
+                                            VerticalAlignment="Center">
+                                            <customcontrol:WritableComboBox
+                                                Width="150"
+                                                Height="30"
+                                                MaxPageRange="{Binding SDKPageCount}"
+                                                PageIndexList="{Binding SetPageRange, Mode=TwoWay}"
+                                                SelectedIndex="0"
+                                                Text="{Binding SetPageRangeStr, Mode=TwoWay}" />
                                         </StackPanel>
-                                        <TextBlock Grid.Column="6" Text="{Binding DocSize}"  HorizontalAlignment="Center" VerticalAlignment="Center" TextTrimming="CharacterEllipsis"/>
-                                        <StackPanel Grid.Column="8" VerticalAlignment="Center" HorizontalAlignment="Stretch">
+                                        <TextBlock
+                                            Grid.Column="6"
+                                            HorizontalAlignment="Center"
+                                            VerticalAlignment="Center"
+                                            Text="{Binding DocSize}"
+                                            TextTrimming="CharacterEllipsis" />
+                                        <StackPanel
+                                            Grid.Column="8"
+                                            HorizontalAlignment="Stretch"
+                                            VerticalAlignment="Center">
 
                                             <customcontrol:PathButton
-            Visibility="Collapsed"
-            HorizontalAlignment="Center"
-            VerticalAlignment="Center"
-            VerticalContentAlignment="Center"
-            x:Name="DeleteIcon"
-            Width="16" Height="16"
-           Click="Delete_Click"
-            Icon="{StaticResource Ic_DeleteButtonPath}" IconFill="#616469"
-            IconHeight="16" IconWidth="16"
-            IconMouseOver="{StaticResource Ic_DeleteButtonPath}" IconMouseOverFill="#616469"
-            IconPress="{StaticResource Ic_DeleteButtonPath}" IconPressFill="#616469"
-            CornerRadius="4"  HorizontalContentAlignment="Center"
-            MouseOverBackground="{StaticResource color.item-state.hov.bg}"
-            MouseDownBackground="{StaticResource color.item-state.sel.bg.lv3}"                          
-            MouseDownBorderBrush="{StaticResource color.item-state.sel.border.lv3}"
-                    />
+                                                x:Name="DeleteIcon"
+                                                Width="16"
+                                                Height="16"
+                                                HorizontalAlignment="Center"
+                                                VerticalAlignment="Center"
+                                                HorizontalContentAlignment="Center"
+                                                VerticalContentAlignment="Center"
+                                                Click="Delete_Click"
+                                                CornerRadius="4"
+                                                Icon="{StaticResource Ic_DeleteButtonPath}"
+                                                IconFill="#616469"
+                                                IconHeight="16"
+                                                IconMouseOver="{StaticResource Ic_DeleteButtonPath}"
+                                                IconMouseOverFill="#616469"
+                                                IconPress="{StaticResource Ic_DeleteButtonPath}"
+                                                IconPressFill="#616469"
+                                                IconWidth="16"
+                                                MouseDownBackground="{StaticResource color.item-state.sel.bg.lv3}"
+                                                MouseDownBorderBrush="{StaticResource color.item-state.sel.border.lv3}"
+                                                MouseOverBackground="{StaticResource color.item-state.hov.bg}"
+                                                Visibility="Collapsed" />
                                         </StackPanel>
                                     </Grid>
                                 </StackPanel>
@@ -201,133 +330,270 @@
                 </ListView>
             </Grid>
         </Border>
-        <Border Grid.Column="3" Grid.RowSpan="7" Background="{StaticResource color.sys.layout.mg}" Visibility="Collapsed">
+        <Border
+            Grid.RowSpan="7"
+            Grid.Column="3"
+            Background="{StaticResource color.sys.layout.mg}"
+            Visibility="Collapsed">
             <Grid>
                 <Grid.RowDefinitions>
-                    <RowDefinition Height="14"/>
-                    <RowDefinition Height="*"/>
-                    <RowDefinition Height="auto"/>
-                    <RowDefinition Height="16"/>
+                    <RowDefinition Height="14" />
+                    <RowDefinition Height="*" />
+                    <RowDefinition Height="auto" />
+                    <RowDefinition Height="16" />
                 </Grid.RowDefinitions>
                 <Grid.ColumnDefinitions>
-                    <ColumnDefinition Width="16"/>
-                    <ColumnDefinition Width="*"/>
-                    <ColumnDefinition Width="16"/>
+                    <ColumnDefinition Width="16" />
+                    <ColumnDefinition Width="*" />
+                    <ColumnDefinition Width="16" />
                 </Grid.ColumnDefinitions>
                 <StackPanel Grid.Row="1" Grid.Column="1">
-                    <TextBlock Text=" Page Size" VerticalAlignment="Center" FontSize="14" FontFamily="Segoe UI" FontWeight="Bold"/>
-                    <RadioButton IsChecked="True" Content="Original page size" FontWeight="Regular" FontSize="14" FontFamily="Segoe UI" Tag="0" Margin="0,14,0,0">
+                    <TextBlock
+                        VerticalAlignment="Center"
+                        FontFamily="Segoe UI"
+                        FontSize="14"
+                        FontWeight="Bold"
+                        Text=" Page Size" />
+                    <RadioButton
+                        Margin="0,14,0,0"
+                        Content="Original page size"
+                        FontFamily="Segoe UI"
+                        FontSize="14"
+                        FontWeight="Regular"
+                        IsChecked="True"
+                        Tag="0">
                         <i:Interaction.Triggers>
                             <i:EventTrigger EventName="Checked">
-                                <i:InvokeCommandAction Command="{Binding SetPageSizeTypeCommand}" CommandParameter="{Binding RelativeSource={RelativeSource AncestorType=RadioButton}}" PassEventArgsToCommand="True" />
+                                <i:InvokeCommandAction
+                                    Command="{Binding SetPageSizeTypeCommand}"
+                                    CommandParameter="{Binding RelativeSource={RelativeSource AncestorType=RadioButton}}"
+                                    PassEventArgsToCommand="True" />
                             </i:EventTrigger>
                         </i:Interaction.Triggers>
                     </RadioButton>
-                    <RadioButton Content="A4" Tag="1" FontWeight="Regular" FontSize="14" FontFamily="Segoe UI" Margin="0,8,0,0">
+                    <RadioButton
+                        Margin="0,8,0,0"
+                        Content="A4"
+                        FontFamily="Segoe UI"
+                        FontSize="14"
+                        FontWeight="Regular"
+                        Tag="1">
                         <i:Interaction.Triggers>
                             <i:EventTrigger EventName="Checked">
-                                <i:InvokeCommandAction Command="{Binding SetPageSizeTypeCommand}" CommandParameter="{Binding RelativeSource={RelativeSource AncestorType=RadioButton}}" PassEventArgsToCommand="True" />
+                                <i:InvokeCommandAction
+                                    Command="{Binding SetPageSizeTypeCommand}"
+                                    CommandParameter="{Binding RelativeSource={RelativeSource AncestorType=RadioButton}}"
+                                    PassEventArgsToCommand="True" />
                             </i:EventTrigger>
                         </i:Interaction.Triggers>
                     </RadioButton>
-                    <RadioButton Content="A3" Tag="2" FontWeight="Regular" FontSize="14" FontFamily="Segoe UI" Margin="0,8,0,0">
+                    <RadioButton
+                        Margin="0,8,0,0"
+                        Content="A3"
+                        FontFamily="Segoe UI"
+                        FontSize="14"
+                        FontWeight="Regular"
+                        Tag="2">
                         <i:Interaction.Triggers>
                             <i:EventTrigger EventName="Checked">
-                                <i:InvokeCommandAction Command="{Binding SetPageSizeTypeCommand}" CommandParameter="{Binding RelativeSource={RelativeSource AncestorType=RadioButton}}" PassEventArgsToCommand="True" />
+                                <i:InvokeCommandAction
+                                    Command="{Binding SetPageSizeTypeCommand}"
+                                    CommandParameter="{Binding RelativeSource={RelativeSource AncestorType=RadioButton}}"
+                                    PassEventArgsToCommand="True" />
                             </i:EventTrigger>
                         </i:Interaction.Triggers>
                     </RadioButton>
-                    <RadioButton Content="U.S.Letter" Tag="3" FontWeight="Regular" FontSize="14" FontFamily="Segoe UI" Margin="0,8,0,0">
+                    <RadioButton
+                        Margin="0,8,0,0"
+                        Content="U.S.Letter"
+                        FontFamily="Segoe UI"
+                        FontSize="14"
+                        FontWeight="Regular"
+                        Tag="3">
                         <i:Interaction.Triggers>
                             <i:EventTrigger EventName="Checked">
-                                <i:InvokeCommandAction Command="{Binding SetPageSizeTypeCommand}" CommandParameter="{Binding RelativeSource={RelativeSource AncestorType=RadioButton}}" PassEventArgsToCommand="True" />
+                                <i:InvokeCommandAction
+                                    Command="{Binding SetPageSizeTypeCommand}"
+                                    CommandParameter="{Binding RelativeSource={RelativeSource AncestorType=RadioButton}}"
+                                    PassEventArgsToCommand="True" />
                             </i:EventTrigger>
                         </i:Interaction.Triggers>
                     </RadioButton>
-                    <RadioButton Content="U.S.Legal" Tag="4" FontWeight="Regular" FontSize="14" FontFamily="Segoe UI" Margin="0,8,0,0">
+                    <RadioButton
+                        Margin="0,8,0,0"
+                        Content="U.S.Legal"
+                        FontFamily="Segoe UI"
+                        FontSize="14"
+                        FontWeight="Regular"
+                        Tag="4">
                         <i:Interaction.Triggers>
                             <i:EventTrigger EventName="Checked">
-                                <i:InvokeCommandAction Command="{Binding SetPageSizeTypeCommand}" CommandParameter="{Binding RelativeSource={RelativeSource AncestorType=RadioButton}}" PassEventArgsToCommand="True" />
+                                <i:InvokeCommandAction
+                                    Command="{Binding SetPageSizeTypeCommand}"
+                                    CommandParameter="{Binding RelativeSource={RelativeSource AncestorType=RadioButton}}"
+                                    PassEventArgsToCommand="True" />
                             </i:EventTrigger>
                         </i:Interaction.Triggers>
                     </RadioButton>
-                    <RadioButton x:Name="Customized" Content="Customized" Tag="5" FontWeight="Regular" FontSize="14" FontFamily="Segoe UI" Margin="0,8,0,0">
+                    <RadioButton
+                        x:Name="Customized"
+                        Margin="0,8,0,0"
+                        Content="Customized"
+                        FontFamily="Segoe UI"
+                        FontSize="14"
+                        FontWeight="Regular"
+                        Tag="5">
                         <i:Interaction.Triggers>
                             <i:EventTrigger EventName="Checked">
-                                <i:InvokeCommandAction Command="{Binding SetPageSizeTypeCommand}" CommandParameter="{Binding RelativeSource={RelativeSource AncestorType=RadioButton}}" PassEventArgsToCommand="True" />
+                                <i:InvokeCommandAction
+                                    Command="{Binding SetPageSizeTypeCommand}"
+                                    CommandParameter="{Binding RelativeSource={RelativeSource AncestorType=RadioButton}}"
+                                    PassEventArgsToCommand="True" />
                             </i:EventTrigger>
                         </i:Interaction.Triggers>
                     </RadioButton>
-                    <StackPanel IsEnabled="{Binding ElementName=Customized, Path=IsChecked}" Margin="0,8,0,0" Orientation="Horizontal" HorizontalAlignment="Stretch">
-                        <customcontrol:TextBoxEx Width="85" PreviewKeyDown="TextBoxEx_PreviewKeyDown" x:Name="TextWidth" PlaceholderText="595" Text="{Binding InputWidth,Mode=TwoWay}"  PreviewTextInput="TextBox_PreviewTextInput" LostFocus="TextBoxEx_LostFocus"/>
-                        <TextBlock Text="X" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="8,0"/>
-                        <customcontrol:TextBoxEx Width="85" PreviewKeyDown="TextBoxEx_PreviewKeyDown" x:Name="TextHeight" PlaceholderText="841" Grid.Column="2" Text="{Binding InputHeight,Mode=TwoWay}" PreviewTextInput="TextBox_PreviewTextInput" LostFocus="TextBoxEx_LostFocus"/>
-                        <TextBlock Text="mm" VerticalAlignment="Center" FontWeight="Regular" FontSize="14" FontFamily="Segoe UI" Margin="8,0,0,0"/>
+                    <StackPanel
+                        Margin="0,8,0,0"
+                        HorizontalAlignment="Stretch"
+                        IsEnabled="{Binding ElementName=Customized, Path=IsChecked}"
+                        Orientation="Horizontal">
+                        <customcontrol:TextBoxEx
+                            x:Name="TextWidth"
+                            Width="85"
+                            LostFocus="TextBoxEx_LostFocus"
+                            PlaceholderText="595"
+                            PreviewKeyDown="TextBoxEx_PreviewKeyDown"
+                            PreviewTextInput="TextBox_PreviewTextInput"
+                            Text="{Binding InputWidth, Mode=TwoWay}" />
+                        <TextBlock
+                            Grid.Column="1"
+                            Margin="8,0"
+                            HorizontalAlignment="Center"
+                            VerticalAlignment="Center"
+                            Text="X" />
+                        <customcontrol:TextBoxEx
+                            x:Name="TextHeight"
+                            Grid.Column="2"
+                            Width="85"
+                            LostFocus="TextBoxEx_LostFocus"
+                            PlaceholderText="841"
+                            PreviewKeyDown="TextBoxEx_PreviewKeyDown"
+                            PreviewTextInput="TextBox_PreviewTextInput"
+                            Text="{Binding InputHeight, Mode=TwoWay}" />
+                        <TextBlock
+                            Margin="8,0,0,0"
+                            VerticalAlignment="Center"
+                            FontFamily="Segoe UI"
+                            FontSize="14"
+                            FontWeight="Regular"
+                            Text="mm" />
                     </StackPanel>
                 </StackPanel>
             </Grid>
         </Border>
 
-        <StackPanel Grid.Column="1" Grid.Row="5"  Orientation="Horizontal" HorizontalAlignment="Right">
-            <Button x:Name="BtnMerge" Width="118" Content="Merge"  Height="32" Style="{StaticResource Btn.cta}" Command="{Binding MergeCommand}" IsEnabled="{Binding MergeObjectlist.Count, Converter={StaticResource MergeListCountToBool}}"/>
-            <Button x:Name="BtnCancel" Margin="16,0,0,0" Width="118" Content="Cancel" Height="32" Style="{StaticResource btn.sec}" Command="{Binding CancelCommand}"/>
+        <StackPanel
+            Grid.Row="5"
+            Grid.Column="1"
+            HorizontalAlignment="Right"
+            Orientation="Horizontal">
+            <Button
+                x:Name="BtnMerge"
+                Width="118"
+                Height="32"
+                Command="{Binding MergeCommand}"
+                Content="Merge"
+                IsEnabled="{Binding MergeObjectlist.Count, Converter={StaticResource MergeListCountToBool}}"
+                Style="{StaticResource Btn.cta}" />
+            <Button
+                x:Name="BtnCancel"
+                Width="118"
+                Height="32"
+                Margin="16,0,0,0"
+                Command="{Binding CancelCommand}"
+                Content="Cancel"
+                Style="{StaticResource btn.sec}" />
         </StackPanel>
-        <StackPanel  Grid.Column="1" Grid.Row="5" Orientation="Horizontal" >
-            <ComboBox Grid.Column="1" SelectedIndex="{Binding ComboBoxSelectedIndex,Mode=TwoWay}"  Grid.Row="5" Width="113" Height="32" HorizontalAlignment="Left" VerticalAlignment="Bottom" >
-            <ComboBoxItem Tag="0">
-                <TextBlock x:Name="AddComboBoxItemText" />
-                <i:Interaction.Triggers>
-                    <i:EventTrigger EventName="PreviewMouseUp">
-                        <i:InvokeCommandAction 
-                        Command="{Binding AddFilesCommand}"
-                        CommandParameter="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ComboBoxItem}},Path=Tag}"
-                                           PassEventArgsToCommand="True" />
-                    </i:EventTrigger>
-                </i:Interaction.Triggers>
-            </ComboBoxItem>
-            <ComboBoxItem Tag="1">
-               <TextBlock  x:Name="AddFolderComboBoxItemText"/>
-                <i:Interaction.Triggers>
-                    <i:EventTrigger EventName="PreviewMouseUp">
-                        <i:InvokeCommandAction 
-                        Command="{Binding AddFilesCommand}"
-                        CommandParameter="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ComboBoxItem}},Path=Tag}"
-                                           PassEventArgsToCommand="True" />
-                    </i:EventTrigger>
-                </i:Interaction.Triggers>
-            </ComboBoxItem>
-            <ComboBoxItem Tag="2">
-                <TextBlock x:Name="AddOpenFileComboBoxItem"/>
-                <i:Interaction.Triggers>
-                    <i:EventTrigger EventName="PreviewMouseUp">
-                        <i:InvokeCommandAction 
-                        Command="{Binding AddFilesCommand}"
-                        CommandParameter="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ComboBoxItem}},Path=Tag}"
-                                           PassEventArgsToCommand="True" />
-                    </i:EventTrigger>
-                </i:Interaction.Triggers>
+        <StackPanel
+            Grid.Row="5"
+            Grid.Column="1"
+            Orientation="Horizontal">
+            <ComboBox
+                Grid.Row="5"
+                Grid.Column="1"
+                Width="113"
+                Height="32"
+                HorizontalAlignment="Left"
+                VerticalAlignment="Bottom"
+                SelectedIndex="{Binding ComboBoxSelectedIndex, Mode=TwoWay}">
+                <ComboBoxItem Tag="0">
+                    <TextBlock x:Name="AddComboBoxItemText" />
+                    <i:Interaction.Triggers>
+                        <i:EventTrigger EventName="PreviewMouseUp">
+                            <i:InvokeCommandAction
+                                Command="{Binding AddFilesCommand}"
+                                CommandParameter="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ComboBoxItem}}, Path=Tag}"
+                                PassEventArgsToCommand="True" />
+                        </i:EventTrigger>
+                    </i:Interaction.Triggers>
+                </ComboBoxItem>
+                <ComboBoxItem Tag="1">
+                    <TextBlock x:Name="AddFolderComboBoxItemText" />
+                    <i:Interaction.Triggers>
+                        <i:EventTrigger EventName="PreviewMouseUp">
+                            <i:InvokeCommandAction
+                                Command="{Binding AddFilesCommand}"
+                                CommandParameter="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ComboBoxItem}}, Path=Tag}"
+                                PassEventArgsToCommand="True" />
+                        </i:EventTrigger>
+                    </i:Interaction.Triggers>
+                </ComboBoxItem>
+                <ComboBoxItem Tag="2">
+                    <TextBlock x:Name="AddOpenFileComboBoxItem" />
+                    <i:Interaction.Triggers>
+                        <i:EventTrigger EventName="PreviewMouseUp">
+                            <i:InvokeCommandAction
+                                Command="{Binding AddFilesCommand}"
+                                CommandParameter="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ComboBoxItem}}, Path=Tag}"
+                                PassEventArgsToCommand="True" />
+                        </i:EventTrigger>
+                    </i:Interaction.Triggers>
 
-            </ComboBoxItem>
-        </ComboBox>
-        <Border Margin="16,0,0,0" BorderThickness="1" Width="32" Height="32" Grid.Column="1" Grid.Row="5" BorderBrush="{StaticResource color.btn.sec.border-color}" 
-            HorizontalAlignment="Left" VerticalAlignment="Bottom" CornerRadius="4">
-            <customcontrol:PathButton
-            HorizontalAlignment="Center"
-            VerticalAlignment="Center"
-            VerticalContentAlignment="Center"
-            x:Name="BtnAdd"
-            Width="32" Height="32"
-            Command="{Binding ClearCommand}"
-            Icon="{StaticResource Ic_ClearButtonPath}" IconFill="#616469"
-            IconHeight="16" IconWidth="16"
-            IconMouseOver="{StaticResource Ic_ClearButtonPath}" IconMouseOverFill="#616469"
-            IconPress="{StaticResource Ic_ClearButtonPath}" IconPressFill="#616469"
-            CornerRadius="4"  HorizontalContentAlignment="Center"
-            MouseOverBackground="{StaticResource color.item-state.hov.bg}"
-            MouseDownBackground="{StaticResource color.item-state.sel.bg.lv3}"                          
-            MouseDownBorderBrush="{StaticResource color.item-state.sel.border.lv3}"
-                    />
-        </Border>
+                </ComboBoxItem>
+            </ComboBox>
+            <Border
+                Grid.Row="5"
+                Grid.Column="1"
+                Width="32"
+                Height="32"
+                Margin="16,0,0,0"
+                HorizontalAlignment="Left"
+                VerticalAlignment="Bottom"
+                BorderBrush="{StaticResource color.btn.sec.border-color}"
+                BorderThickness="1"
+                CornerRadius="4">
+                <customcontrol:PathButton
+                    x:Name="BtnAdd"
+                    Width="32"
+                    Height="32"
+                    HorizontalAlignment="Center"
+                    VerticalAlignment="Center"
+                    HorizontalContentAlignment="Center"
+                    VerticalContentAlignment="Center"
+                    Command="{Binding ClearCommand}"
+                    CornerRadius="4"
+                    Icon="{StaticResource Ic_ClearButtonPath}"
+                    IconFill="#616469"
+                    IconHeight="16"
+                    IconMouseOver="{StaticResource Ic_ClearButtonPath}"
+                    IconMouseOverFill="#616469"
+                    IconPress="{StaticResource Ic_ClearButtonPath}"
+                    IconPressFill="#616469"
+                    IconWidth="16"
+                    MouseDownBackground="{StaticResource color.item-state.sel.bg.lv3}"
+                    MouseDownBorderBrush="{StaticResource color.item-state.sel.border.lv3}"
+                    MouseOverBackground="{StaticResource color.item-state.hov.bg}" />
+            </Border>
         </StackPanel>
     </Grid>
 </UserControl>