20220510_191_upperpc/FTP/FTPControlWindow.xaml
2023-07-27 10:57:34 +08:00

216 lines
14 KiB
XML

<Window x:Class="FTP.FTPControlWindow"
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:local="clr-namespace:FTP"
mc:Ignorable="d"
WindowStartupLocation="CenterScreen" Background="Transparent"
FontFamily="Microsoft YaHei" FontSize="12" FontWeight="ExtraLight" WindowStyle="None" AllowsTransparency="True"
Title="MainWindow" Height="450" Width="800">
<Window.Resources>
<ResourceDictionary>
<!-- =============== 按钮样式 ============== = -->
<Style TargetType="Button" x:Key="ControlButtonStyle">
<Setter Property="Width" Value="40"/>
<Setter Property="Background" Value="#11FFFFFF"/>
<Setter Property="Foreground" Value="White"/>
<Setter Property="FontFamily" Value="Assets/Fonts/#iconfont"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Grid Background="{TemplateBinding Background}">
<Border Name="root">
<ContentPresenter VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="root" Property="Background" Value="#33FFFFFF"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="DataGridStyle" TargetType="{x:Type DataGrid}">
<Setter Property="AutoGenerateColumns" Value="False"/>
<Setter Property="CanUserAddRows" Value="False"/>
<Setter Property="CanUserDeleteRows" Value="False"/>
<Setter Property="CanUserReorderColumns" Value="False"/>
<Setter Property="CanUserResizeColumns" Value="True"/>
<Setter Property="CanUserResizeRows" Value="False"/>
<Setter Property="CanUserSortColumns" Value="True"/>
<Setter Property="ColumnHeaderHeight" Value="30"/>
<Setter Property="GridLinesVisibility" Value="Horizontal"/>
<Setter Property="ColumnHeaderHeight" Value="30"/>
<Setter Property="GridLinesVisibility" Value="All"/>
<Setter Property="HeadersVisibility" Value="All"/>
<Setter Property="IsReadOnly" Value="True"/>
<!--IsReadOnly="True" Name="datagrid" RowHeight="28"
Background="#00000000"-->
</Style>
<Style x:Key="ColumnHeaderStyle" TargetType="DataGridColumnHeader">
<Setter Property="Height" Value="30"/>
<Setter Property="Foreground" Value="Black"/>
<Setter Property="FontSize" Value="18"/>
<Setter Property="HorizontalContentAlignment" Value="Center"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
</Style>
</ResourceDictionary>
</Window.Resources>
<!--主界面 向内边框 背景色 圆角-->
<Border Margin="5" CornerRadius="10">
<Border.Background>
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Color="#FF285173" Offset="0.0" />
<GradientStop Color="#FF244967" Offset="0.3" />
<GradientStop Color="#FF14273A" Offset="1.0" />
</LinearGradientBrush>
</Border.Background>
<!--设置阴影-->
<Border.Effect>
<!-- 阴影效果 阴影颜色 阴影深度 模糊半径 透明度 方向 0 向下 -->
<DropShadowEffect Color="Gray" ShadowDepth="0" BlurRadius="5" Opacity="0.3" Direction="0" />
</Border.Effect>
<Grid>
<!--顶栏 设置鼠标左键按下事件(可以拖动窗口)-->
<Border Background="#0000" Height="132" VerticalAlignment="Top" CornerRadius="10,10,0,0" MouseLeftButtonDown="Border_MouseLeftButtonDown"/>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="45"/>
<RowDefinition/>
</Grid.RowDefinitions>
<Border HorizontalAlignment="Left" WindowChrome.IsHitTestVisibleInChrome="True" Background="Transparent">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Left" Margin="20,0,0,0">
<TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" Text="IP地 址:" Foreground="#99FFFFFF" FontSize="18"/>
<TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" Text="{Binding ftpcon.IP}" Foreground="#99FFFFFF" FontSize="18"/>
<TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" Text="端口号:" Foreground="#99FFFFFF" FontSize="18" Margin="20,0,0,0"/>
<TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" Text="{Binding ftpcon.Port}" Foreground="#99FFFFFF" FontSize="18"/>
<Button Content="&#xe8b7;" Style="{StaticResource ControlButtonStyle}" Click="Button_Click_3" Margin="20,0,20,0">
<Button.ToolTip>
<ToolTip Content="设置" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Button.ToolTip>
</Button>
<Button Content="&#xe61c;" Style="{StaticResource ControlButtonStyle}" Click="Button_Click_4" Margin="0,0,20,0">
<Button.ToolTip>
<ToolTip Content="连接" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Button.ToolTip>
</Button>
<Button Content="&#xe65e;" Style="{StaticResource ControlButtonStyle}" Click="Button_Click_5">
<Button.ToolTip>
<ToolTip Content="断开连接" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Button.ToolTip>
</Button>
</StackPanel>
</Border>
<Border HorizontalAlignment="Right" WindowChrome.IsHitTestVisibleInChrome="True" Background="Transparent">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
<Button Content="&#xe60d;" Style="{StaticResource ControlButtonStyle}" Click="MinButton_Click"/>
<Button Content="&#xe600;" Style="{StaticResource ControlButtonStyle}" Click="MaxButton_Click"/>
<Button Content="&#xe639;" Style="{StaticResource ControlButtonStyle}" Background="DarkRed" Click="Button_Click"/>
</StackPanel>
</Border>
<Grid Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition Width="50"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="45"/>
<RowDefinition Height="30"/>
<RowDefinition/>
</Grid.RowDefinitions>
<UniformGrid Columns="3">
<Button Name="retrunNext" Content="&#xe613;" Style="{StaticResource ControlButtonStyle}" Click="Button_Click_6" Margin="0,5">
<Button.ToolTip>
<ToolTip Content="返回上级" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Button.ToolTip>
</Button>
<Button Name="refresh" Content="&#xe61b;" Style="{StaticResource ControlButtonStyle}" Click="refresh_Click" Margin="0,5">
<Button.ToolTip>
<ToolTip Content="刷新" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Button.ToolTip>
</Button>
<Button Name="delete" Content="&#xe8b6;" Style="{StaticResource ControlButtonStyle}" Click="delete_Click" Margin="0,5">
<Button.ToolTip>
<ToolTip Content="删除" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Button.ToolTip>
</Button>
</UniformGrid>
<Grid Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition Width="40"/>
</Grid.ColumnDefinitions>
<TextBox Grid.Column="0" Text="{Binding ftpcon.ftpURI}" VerticalContentAlignment="Center" Background="White" Margin="10,0"/>
<Button Grid.Column="1" Style="{StaticResource ControlButtonStyle}" Content="确定"/>
</Grid>
<DataGrid Name="datagrid1" Grid.Row="2" Style="{DynamicResource DataGridStyle}" ItemsSource="{Binding ftpList.FTPList}" MouseDoubleClick="datagrid1_MouseDoubleClick" ColumnHeaderStyle="{DynamicResource ColumnHeaderStyle}">
<DataGrid.Columns>
<DataGridTextColumn Width="*" MinWidth="25" Binding="{Binding FileName}" Header="文件名称"/>
<DataGridTextColumn Width="*" MinWidth="25" Binding="{Binding CreateTime,StringFormat={}{0:yyyy-MM-dd HH:mm}}" Header="修改日期"/>
<DataGridTextColumn Width="*" MinWidth="25" Binding="{Binding FileType}" Header="类型"/>
<DataGridTextColumn Width="*" MinWidth="25" Binding="{Binding FileSize}" Header="大小"/>
</DataGrid.Columns>
</DataGrid>
</Grid>
<Grid Grid.Column="1">
<StackPanel Orientation="Vertical" VerticalAlignment="Center">
<Button Content="&#xe602;" Style="{StaticResource ControlButtonStyle}" Height="30" Click="Button_Click_1" Margin="0,0,0,20"/>
<Button Content="&#xe601;" Style="{StaticResource ControlButtonStyle}" Height="30" Click="Button_Click_2" Margin="0,20,0,0"/>
</StackPanel>
</Grid>
<Grid Grid.Column="2">
<Grid.RowDefinitions>
<RowDefinition Height="45"/>
<RowDefinition Height="30"/>
<RowDefinition/>
</Grid.RowDefinitions>
<UniformGrid Columns="3">
<Button Name="retrunNextLocal" Content="&#xe613;" Style="{StaticResource ControlButtonStyle}" Click="retrunNextLocal_Click" Margin="0,5">
<Button.ToolTip>
<ToolTip Content="返回上级" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Button.ToolTip>
</Button>
<Button Name="refreshLocal" Content="&#xe61b;" Style="{StaticResource ControlButtonStyle}" Click="refreshLocal_Click" Margin="0,5">
<Button.ToolTip>
<ToolTip Content="刷新" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Button.ToolTip>
</Button>
<Button Name="deleteLocal" Content="&#xe8b6;" Style="{StaticResource ControlButtonStyle}" Click="deleteLocal_Click" Margin="0,5">
<Button.ToolTip>
<ToolTip Content="删除" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Button.ToolTip>
</Button>
</UniformGrid>
<Grid Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition Width="40"/>
</Grid.ColumnDefinitions>
<TextBox Grid.Column="0" Text="{Binding ftpList.datagrid2Path}" VerticalContentAlignment="Center" Background="White" Margin="10,0"/>
<Button Grid.Column="1" Style="{StaticResource ControlButtonStyle}" Content="确定"/>
</Grid>
<DataGrid Name="datagrid2" Grid.Row="2" Style="{DynamicResource DataGridStyle}" ItemsSource="{Binding ftpList.LocalList}" MouseDoubleClick="datagrid2_MouseDoubleClick" ColumnHeaderStyle="{DynamicResource ColumnHeaderStyle}">
<DataGrid.Columns>
<DataGridTextColumn Width="*" MinWidth="25" Binding="{Binding FileName, Mode=TwoWay}" Header="文件名称"/>
<DataGridTextColumn Width="*" MinWidth="25" Binding="{Binding CreateTime,StringFormat={}{0:yyyy-MM-dd HH:mm}, Mode=TwoWay}" Header="修改日期"/>
<DataGridTextColumn Width="*" MinWidth="25" Binding="{Binding FileType, Mode=TwoWay}" Header="类型"/>
<DataGridTextColumn Width="*" MinWidth="25" Binding="{Binding FileSize, Mode=TwoWay}" Header="大小"/>
</DataGrid.Columns>
</DataGrid>
</Grid>
</Grid>
</Grid>
</Grid>
</Border>
</Window>