Files
qhmes/yy-admin-master/YY.Admin/Views/Print/PrintSettingsView.xaml

97 lines
5.1 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<UserControl x:Class="YY.Admin.Views.Print.PrintSettingsView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:hc="https://handyorg.github.io/handycontrol">
<ScrollViewer VerticalScrollBarVisibility="Auto">
<StackPanel Margin="24" MaxWidth="680">
<!-- 标题 -->
<TextBlock Text="打印设置" FontSize="18" FontWeight="Bold" Margin="0,0,0,20"/>
<!-- PrintDot 连接配置 -->
<Border BorderThickness="1" BorderBrush="{DynamicResource BorderBrush}" CornerRadius="4" Padding="16" Margin="0,0,0,16">
<StackPanel>
<TextBlock Text="PrintDot 桥接器连接" FontSize="14" FontWeight="SemiBold" Margin="0,0,0,12"/>
<Grid Margin="0,0,0,8">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="120"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<TextBlock Text="WebSocket 地址" VerticalAlignment="Center" FontSize="13"/>
<TextBox Grid.Column="1" Text="{Binding WsUrl, UpdateSourceTrigger=PropertyChanged}"
hc:InfoElement.Placeholder="ws://192.168.x.x:1122/ws"
FontSize="13" Padding="6,4"/>
</Grid>
<TextBlock Text="格式ws://&lt;IP&gt;:1122/ws支持局域网任意 IP" FontSize="11"
Foreground="{DynamicResource SecondaryTextBrush}" Margin="120,0,0,12"/>
<StackPanel Orientation="Horizontal" Margin="0,0,0,8">
<Button Content="测试连接并获取打印机" Command="{Binding TestConnectionCommand}"
Style="{StaticResource ButtonPrimary}" Padding="12,6" FontSize="13" Margin="0,0,8,0"/>
<Button Content="保存设置" Command="{Binding SaveCommand}"
Style="{StaticResource ButtonDefault}" Padding="12,6" FontSize="13"/>
</StackPanel>
<!-- 状态提示 -->
<TextBlock Text="{Binding StatusMessage}" FontSize="12" Foreground="{DynamicResource InfoBrush}"
Visibility="{Binding StatusMessage, Converter={StaticResource String2VisibilityConverter}}"/>
</StackPanel>
</Border>
<!-- 打印机列表 -->
<Border BorderThickness="1" BorderBrush="{DynamicResource BorderBrush}" CornerRadius="4" Padding="16" Margin="0,0,0,16">
<StackPanel>
<TextBlock Text="可用打印机" FontSize="14" FontWeight="SemiBold" Margin="0,0,0,12"/>
<ListBox ItemsSource="{Binding Printers}" SelectedItem="{Binding SelectedPrinter}"
MaxHeight="180" ScrollViewer.VerticalScrollBarVisibility="Auto">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" Margin="4,2">
<TextBlock Text="{Binding Name}" FontSize="13"/>
<TextBlock Text=" (默认)" FontSize="11" Foreground="{DynamicResource InfoBrush}"
Visibility="{Binding IsDefault, Converter={StaticResource Boolean2VisibilityConverter}}"/>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
<TextBlock Margin="0,8,0,0" FontSize="12" Foreground="{DynamicResource SecondaryTextBrush}">
已选打印机:<Run Text="{Binding SelectedPrinter.Name, FallbackValue='(未选择)'}"/>
</TextBlock>
</StackPanel>
</Border>
<!-- 打印模板列表 -->
<Border BorderThickness="1" BorderBrush="{DynamicResource BorderBrush}" CornerRadius="4" Padding="16">
<StackPanel>
<DockPanel Margin="0,0,0,12">
<Button DockPanel.Dock="Right" Content="刷新模板" Command="{Binding RefreshTemplatesCommand}"
Style="{StaticResource ButtonDefault}" Padding="10,4" FontSize="12"/>
<TextBlock Text="打印模板" FontSize="14" FontWeight="SemiBold" VerticalAlignment="Center"/>
</DockPanel>
<DataGrid ItemsSource="{Binding Templates}" AutoGenerateColumns="False"
IsReadOnly="True" MaxHeight="240" GridLinesVisibility="Horizontal"
HeadersVisibility="Column" FontSize="12">
<DataGrid.Columns>
<DataGridTextColumn Header="模板编码" Binding="{Binding TemplateCode}" Width="160"/>
<DataGridTextColumn Header="模板名称" Binding="{Binding TemplateName}" Width="*"/>
<DataGridTextColumn Header="分类" Binding="{Binding Category}" Width="80"/>
<DataGridTextColumn Header="纸宽(mm)" Binding="{Binding PaperWidthMm}" Width="70"/>
<DataGridTextColumn Header="纸高(mm)" Binding="{Binding PaperHeightMm}" Width="70"/>
</DataGrid.Columns>
</DataGrid>
</StackPanel>
</Border>
<!-- 忙碌指示 -->
<hc:LoadingCircle Visibility="{Binding IsBusy, Converter={StaticResource Boolean2VisibilityConverter}}"
HorizontalAlignment="Center" Margin="0,16,0,0"/>
</StackPanel>
</ScrollViewer>
</UserControl>