<Page x:Class="XFEToolBox.Client.Views.Pages.ConsolePage"
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:XFEToolBox.Client.Views.Pages"
xmlns:viewmodel="clr-namespace:XFEToolBox.Client.ViewModel.Pages"
xmlns:controls="clr-namespace:XFEToolBox.WpfCore.Controls;assembly=XFEToolBox.WpfCore"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800"
Title="ConsolePage" d:DataContext="{d:DesignInstance Type=viewmodel:ConsolePageViewModel}">
<controls:RoundedClipBorder CornerRadius="0,0,15,0" Background="#1e1e1e">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="30"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Grid>
<StackPanel Orientation="Horizontal">
<Button Style="{StaticResource ConsoleButton}" Margin="3" IsEnabled="{Binding CanStartServer}" Command="{Binding StartServerCommand}">
<Grid HorizontalAlignment="Center" VerticalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Image Source="/Resources/Image/start.png" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="1"/>
<TextBlock Margin="3,0,0,0" Grid.Column="1" Foreground="White" Text="启动" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Grid>
</Button>
<Button Style="{StaticResource ConsoleButton}" Margin="3" IsEnabled="{Binding CanStopServer}" Command="{Binding StopServerCommand}">
<Grid HorizontalAlignment="Center" VerticalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Image Source="/Resources/Image/stop.png" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="1.5"/>
<TextBlock Margin="3,0,0,0" Grid.Column="1" Foreground="White" Text="停止" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Grid>
</Button>
<Button Style="{StaticResource ConsoleButton}" Margin="3" IsEnabled="{Binding CanRestartServer}" Command="{Binding RestartServerCommand}">
<Grid HorizontalAlignment="Center" VerticalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Image Source="/Resources/Image/restart.png" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="1"/>
<TextBlock Margin="3,0,0,0" Grid.Column="1" Foreground="White" Text="重启" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Grid>
</Button>
<Button Style="{StaticResource ConsoleButton}" Margin="3" IsEnabled="{Binding CanCleanUp}" Command="{Binding CleanUpCommand}">
<Grid HorizontalAlignment="Center" VerticalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Image Source="/Resources/Image/clean.png" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<TextBlock Margin="3,0,0,0" Grid.Column="1" Foreground="White" Text="清空" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Grid>
</Button>
</StackPanel>
</Grid>
<Border Grid.Column="0" Grid.Row="1" CornerRadius="0,0,15,0" Background="Black" Padding="0,5,3,5">
<ListBox x:Name="consoleListBox"
Background="Transparent"
BorderThickness="0"
IsTabStop="False"
ScrollViewer.CanContentScroll="True"
ScrollViewer.HorizontalScrollBarVisibility="Disabled"
ScrollViewer.VerticalScrollBarVisibility="Auto"
VirtualizingPanel.IsVirtualizing="True"
VirtualizingPanel.VirtualizationMode="Recycling"
VirtualizingPanel.ScrollUnit="Pixel">
<ListBox.Template>
<ControlTemplate TargetType="ListBox">
<controls:SmoothScrollViewer x:Name="PART_ScrollViewer"
AnimateMilliseconds="200"
CanContentScroll="{TemplateBinding ScrollViewer.CanContentScroll}"
HorizontalScrollBarVisibility="{TemplateBinding ScrollViewer.HorizontalScrollBarVisibility}"
VerticalScrollBarVisibility="{TemplateBinding ScrollViewer.VerticalScrollBarVisibility}"
Focusable="False"
ScrollChanged="ScrollViewer_ScrollChanged">
<ItemsPresenter/>
</controls:SmoothScrollViewer>
</ControlTemplate>
</ListBox.Template>
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<VirtualizingStackPanel/>
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="Focusable" Value="False"/>
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
<Setter Property="Padding" Value="0"/>
<Setter Property="Margin" Value="0"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListBoxItem">
<ContentPresenter/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
</Border>
</Grid>
</controls:RoundedClipBorder>
</Page>
<Page x:Class="XFEToolBox.Client.Views.Pages.ConsolePage"
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:XFEToolBox.Client.Views.Pages"
xmlns:viewmodel="clr-namespace:XFEToolBox.Client.ViewModel.Pages"
xmlns:controls="clr-namespace:XFEToolBox.WpfCore.Controls;assembly=XFEToolBox.WpfCore"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800"
Title="ConsolePage" d:DataContext="{d:DesignInstance Type=viewmodel:ConsolePageViewModel}">
<controls:RoundedClipBorder CornerRadius="0,0,15,0" Background="#1e1e1e">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="30"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Grid>
<StackPanel Orientation="Horizontal">
<Button Style="{StaticResource ConsoleButton}" Margin="3" IsEnabled="{Binding CanStartServer}" Command="{Binding StartServerCommand}">
<Grid HorizontalAlignment="Center" VerticalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Image Source="/Resources/Image/start.png" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="1"/>
<TextBlock Margin="3,0,0,0" Grid.Column="1" Foreground="White" Text="启动" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Grid>
</Button>
<Button Style="{StaticResource ConsoleButton}" Margin="3" IsEnabled="{Binding CanStopServer}" Command="{Binding StopServerCommand}">
<Grid HorizontalAlignment="Center" VerticalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Image Source="/Resources/Image/stop.png" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="1.5"/>
<TextBlock Margin="3,0,0,0" Grid.Column="1" Foreground="White" Text="停止" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Grid>
</Button>
<Button Style="{StaticResource ConsoleButton}" Margin="3" IsEnabled="{Binding CanRestartServer}" Command="{Binding RestartServerCommand}">
<Grid HorizontalAlignment="Center" VerticalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Image Source="/Resources/Image/restart.png" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="1"/>
<TextBlock Margin="3,0,0,0" Grid.Column="1" Foreground="White" Text="重启" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Grid>
</Button>
<Button Style="{StaticResource ConsoleButton}" Margin="3" IsEnabled="{Binding CanCleanUp}" Command="{Binding CleanUpCommand}">
<Grid HorizontalAlignment="Center" VerticalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Image Source="/Resources/Image/clean.png" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<TextBlock Margin="3,0,0,0" Grid.Column="1" Foreground="White" Text="清空" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Grid>
</Button>
</StackPanel>
</Grid>
<Border Grid.Column="0" Grid.Row="1" CornerRadius="0,0,15,0" Background="Black" Padding="0,5,3,5">
<ListBox x:Name="consoleListBox"
Background="Transparent"
BorderThickness="0"
IsTabStop="False"
ScrollViewer.CanContentScroll="True"
ScrollViewer.HorizontalScrollBarVisibility="Disabled"
ScrollViewer.VerticalScrollBarVisibility="Auto"
VirtualizingPanel.IsVirtualizing="True"
VirtualizingPanel.VirtualizationMode="Recycling"
VirtualizingPanel.ScrollUnit="Pixel">
<ListBox.Template>
<ControlTemplate TargetType="ListBox">
<controls:SmoothScrollViewer x:Name="PART_ScrollViewer"
AnimateMilliseconds="200"
CanContentScroll="{TemplateBinding ScrollViewer.CanContentScroll}"
HorizontalScrollBarVisibility="{TemplateBinding ScrollViewer.HorizontalScrollBarVisibility}"
VerticalScrollBarVisibility="{TemplateBinding ScrollViewer.VerticalScrollBarVisibility}"
Focusable="False"
ScrollChanged="ScrollViewer_ScrollChanged">
<ItemsPresenter/>
</controls:SmoothScrollViewer>
</ControlTemplate>
</ListBox.Template>
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<VirtualizingStackPanel/>
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="Focusable" Value="False"/>
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
<Setter Property="Padding" Value="0"/>
<Setter Property="Margin" Value="0"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListBoxItem">
<ContentPresenter/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
</Border>
</Grid>
</controls:RoundedClipBorder>
</Page>