Files
ShrlAlgoToolkit/WPFluent.Gallery/Views/Pages/OpSystemPage.xaml
ShrlAlgo 4d35cadb56 更新
2025-07-11 09:20:23 +08:00

227 lines
9.5 KiB
XML

<Page
x:Class="WPFluent.Gallery.Views.Pages.OpSystemPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:controls="clr-namespace:WPFluent.Gallery.Controls"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:pages="clr-namespace:WPFluent.Gallery.Views.Pages"
xmlns:ui="https://github.com/ShrlAlgo/WPFluent"
xmlns:vm="clr-namespace:WPFluent.Gallery.ViewModels.Pages"
mc:Ignorable="d"
d:DataContext="{d:DesignInstance vm:OpSystemViewModel,
IsDesignTimeCreatable=False}"
d:DesignHeight="450"
d:DesignWidth="800"
Foreground="{DynamicResource TextFillColorPrimaryBrush}">
<ui:StackPanel Spacing="5">
<GroupBox Margin="0" Header="Copy text to the clipboard">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ui:Button
Grid.Column="0"
Command="{Binding CopyTextToClipboardCommand}"
Content="Copy Text to the Clipboard" />
<ui:TextBlock
Grid.Column="1"
Margin="8,0,0,0"
VerticalAlignment="Center"
Text="Text copied to clipboard!"
Visibility="{Binding TextCopiedVisibility}" />
</Grid>
<ui:TextBox
Grid.Row="1"
MinLines="4"
Text="{Binding TextToCopy}" />
</Grid>
</GroupBox>
<GroupBox Header="Paste text from the clipboard">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<ui:Button
Grid.Row="0"
Margin="0,0,0,16"
Command="{Binding ParseTextFromClipboardCommand}"
Content="Paste Text from the Clipboard" />
<ui:TextBlock
Grid.Row="1"
Text="Clipboard:"
TextDecorations="Underline" />
<ui:TextBlock Grid.Row="2" Text="{Binding ClipboardContent}" />
</Grid>
</GroupBox>
<GroupBox Margin="0" Header="Pick a single file">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ui:Button
Grid.Column="0"
Command="{Binding OpenFileCommand}"
Content="Open a file" />
<StackPanel
Grid.Column="1"
Margin="16,0,0,0"
VerticalAlignment="Center"
Orientation="Horizontal"
Visibility="{Binding OpenedFilePathVisibility}">
<ui:TextBlock Text="Picked file:" />
<ui:TextBlock
Margin="4,0,0,0"
FontTypography="BodyStrong"
Text="{Binding OpenedFilePath}" />
</StackPanel>
</Grid>
</GroupBox>
<GroupBox Margin="0,32,0,0" Header="Pick a specific file type">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ui:Button
Grid.Column="0"
Command="{Binding OpenPictureCommand}"
Content="Open a picture" />
<StackPanel
Grid.Column="1"
Margin="16,0,0,0"
VerticalAlignment="Center"
Orientation="Horizontal"
Visibility="{Binding OpenedPicturePathVisibility}">
<ui:TextBlock Text="Picked photo:" />
<ui:TextBlock
Margin="4,0,0,0"
FontTypography="BodyStrong"
Text="{Binding OpenedPicturePath}" />
</StackPanel>
</Grid>
</GroupBox>
<GroupBox Margin="0,32,0,0" Header="Pick multiple files">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ui:Button
Grid.Column="0"
Command="{Binding OpenMultipleCommand}"
Content="Open multiple files" />
<StackPanel
Grid.Column="1"
Margin="16,0,0,0"
VerticalAlignment="Center"
Visibility="{Binding OpenedMultiplePathVisibility}">
<ui:TextBlock Text="Picked files:" />
<ui:TextBlock FontTypography="BodyStrong" Text="{Binding OpenedMultiplePath}" />
</StackPanel>
</Grid>
</GroupBox>
<GroupBox Margin="0,32,0,0" Header="Pick a folder">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ui:Button
Grid.Column="0"
Command="{Binding OpenFolderCommand}"
Content="Open a folder" />
<StackPanel
Grid.Column="1"
Margin="16,0,0,0"
VerticalAlignment="Center"
Visibility="{Binding OpenedFolderPathVisibility}">
<ui:TextBlock Text="Picked folder:" />
<ui:TextBlock FontTypography="BodyStrong" Text="{Binding OpenedFolderPath}" />
</StackPanel>
</Grid>
</GroupBox>
<GroupBox Margin="0,32,0,0" Header="Save a file">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<ui:TextBlock Grid.Row="0" Text="Prompt the user to save a file." />
<Grid Grid.Row="1" Margin="0,16,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ui:TextBlock
Grid.Column="0"
MinWidth="80"
VerticalAlignment="Center"
Text="File name:" />
<ui:TextBox
Grid.Column="1"
MinWidth="180"
PlaceholderText="Type your file name here..."
Text="{Binding FileToSaveName}" />
<ui:TextBlock
Grid.Column="2"
Margin="4,0,0,0"
VerticalAlignment="Center"
Text=".txt" />
</Grid>
<Grid Grid.Row="2" Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ui:TextBlock
Grid.Column="0"
MinWidth="80"
VerticalAlignment="Center"
Text="File content:" />
<ui:TextBox
Grid.Column="1"
MinWidth="210"
PlaceholderText="Type your file contents here..."
Text="{Binding FileToSaveContents}" />
</Grid>
<Grid Grid.Row="3" Margin="0,16,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ui:Button
Grid.Column="0"
Command="{Binding SaveFileCommand}"
Content="Save a file" />
<ui:TextBlock
Grid.Column="1"
Margin="16,0,0,0"
VerticalAlignment="Center"
Text="{Binding SavedFileNotice}"
Visibility="{Binding SavedFileNoticeVisibility}" />
</Grid>
</Grid>
</GroupBox>
</ui:StackPanel>
</Page>