KeyName.xaml 5.9 KB
<UserControl x:Class="SmartScan.SetControl.WPF.KeyName"
             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:SmartScan.SetControl.WPF"
             mc:Ignorable="d" 
             d:DesignHeight="600" d:DesignWidth="800" >
    <UserControl.Resources>
        <!-- 选项卡按钮样式 -->
        <Style TargetType="RadioButton" x:Key="TabButtonStyle">
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="RadioButton">
                        <Border Background="{TemplateBinding Background}"
                                CornerRadius="3,3,0,0"
                                Padding="15,5">
                            <ContentPresenter HorizontalAlignment="Center"/>
                        </Border>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>

        <!-- 字段列表项样式 -->
        <Style TargetType="ListBoxItem" x:Key="FieldListItemStyle">
            <Setter Property="Foreground" Value="White"/>
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="ListBoxItem">
                        <Grid Background="Transparent">
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="30"/>
                                <ColumnDefinition Width="*"/>
                            </Grid.ColumnDefinitions>

                            <!-- 勾选状态 -->
                            <Path Data="M0,6 L4,10 12,2" 
                                  Stroke="#FF00FF00"
                                  StrokeThickness="2"
                                  />

                            <TextBlock Grid.Column="1" 
                                      Text="{Binding Name}"
                                      VerticalAlignment="Center"/>
                        </Grid>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    </UserControl.Resources>
    <Grid Margin="10">
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="*"/>
        </Grid.RowDefinitions>
        <StackPanel Orientation="Horizontal" Grid.Row="0">
            <RadioButton Content="字段配置" 
                        GroupName="Tabs"
                        Style="{StaticResource TabButtonStyle}"
                        Background="#FF0066CC"
                        IsChecked="True"/>
            <RadioButton Content="匹配规则" 
                        GroupName="Tabs"
                        Style="{StaticResource TabButtonStyle}"
                        Background="#FF2D2D30"/>
            <RadioButton Content="高级选项" 
                        GroupName="Tabs"
                        Style="{StaticResource TabButtonStyle}"
                        Background="#FF2D2D30"/>
        </StackPanel>
        <!-- 主内容区 -->
        <Grid Grid.Row="1" Margin="0,10">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="250"/>
                <ColumnDefinition Width="*"/>
            </Grid.ColumnDefinitions>

            <!-- 左侧字段列表 -->
            <GroupBox Header="标准字段" 
                     Foreground="White"
                     BorderBrush="#FF3E3E42">
                <ListBox ItemsSource="{Binding StandardFields}"
                        ItemContainerStyle="{StaticResource FieldListItemStyle}"
                        SelectedItem="{Binding SelectedField}">
                    <ListBox.ItemTemplate>
                        <DataTemplate>
                            <StackPanel Orientation="Horizontal">
                                <CheckBox IsChecked="{Binding IsEnabled}"
                                         Margin="0,0,10,0"/>
                                <TextBlock Text="{Binding Name}"/>
                            </StackPanel>
                        </DataTemplate>
                    </ListBox.ItemTemplate>
                </ListBox>
            </GroupBox>

            <!-- 右侧配置面板 -->
            <ScrollViewer Grid.Column="1" Margin="10,0">
                <GroupBox Header="Reel ID配置"
                         Foreground="White"
                         BorderBrush="#FF3E3E42">
                    <Grid Margin="10">
                        <Grid.RowDefinitions>
                            <RowDefinition Height="Auto"/>
                            <RowDefinition Height="Auto"/>
                            <RowDefinition Height="Auto"/>
                            <RowDefinition Height="Auto"/>
                            <RowDefinition Height="Auto"/>
                        </Grid.RowDefinitions>

                        <!-- 基本配置 -->
                        <StackPanel Grid.Row="0">
                            <TextBlock Text="字段标识符" Margin="0,5"/>
                            <TextBox Text="{Binding FieldID}" 
                                    Background="#FF252526"/>

                            <TextBlock Text="显示名称" Margin="0,10,0,5"/>
                            <TextBox Text="{Binding DisplayName}" 
                                    Background="#FF252526"/>

                            <CheckBox Content="启用" 
                                     IsChecked="{Binding IsEnabled}"
                                     Margin="0,10"/>
                        </StackPanel>

                        <!-- 验证规则 -->
                       
                    </Grid>
                </GroupBox>
            </ScrollViewer>
        </Grid>
    </Grid>
</UserControl>