alielie
2026-06-15 f08871fe7d148d667f2f11f80f64de71a0d9504c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
<hb:PluginControl x:Class="HMI.MenuManage.UserManage"
             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:hb="clr-namespace:HMI.Base;assembly=HMI.Base"
             xmlns:local="clr-namespace:HMI.MenuManage"
             xmlns:uic="clr-namespace:HMI.UI.Converter;assembly=HMI.UI"
xmlns:pw="https://opensource.panuon.com/wpf"
xmlns:pu="https://opensource.panuon.com/wpf-ui"
             mc:Ignorable="d" 
             Background="{DynamicResource WorkspaceBackground}"
             Padding="10"
             d:DesignHeight="450" d:DesignWidth="800">
    <UserControl.Resources>
    </UserControl.Resources>
    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="6*"/>
            <ColumnDefinition Width="4*"/>
        </Grid.ColumnDefinitions>
        <Border Style="{StaticResource CardBoarder}" Margin="0,0,2,0">
            <StackPanel>
                <DockPanel Margin="0,0,0,10">
                    <Button DockPanel.Dock="Right" Style="{StaticResource DelBtn}"
                            x:Name="deleteBatchBtn" Click="Button_Click"/>
 
                    <Button DockPanel.Dock="Right" Style="{StaticResource ExportBtn}" 
Margin="0,0,10,0" x:Name="exportBtn" Click="Button_Click"/>
 
                    <Button DockPanel.Dock="Right" Style="{StaticResource ImportBtn}" 
        Margin="0,0,10,0" x:Name="importBtn" Click="Button_Click"/>
                    
                    <Button DockPanel.Dock="Right" Style="{StaticResource RfhBtn}" 
                            Margin="0,0,10,0" x:Name="refreshBtn" Click="Button_Click"/>
                    <Button DockPanel.Dock="Right" Style="{StaticResource AddBtn}"
                            Margin="0,0,10,0" x:Name="addBtn" Click="Button_Click"/>
                    <TextBlock DockPanel.Dock="Left" FontSize="{StaticResource TitleFontSize}" 
                           VerticalAlignment="Center" HorizontalAlignment="Left" Text="{DynamicResource HMI.User.Title}"/>
                </DockPanel>
 
                <DataGrid Grid.Column="1" x:Name="table" Style="{StaticResource DefaultDataGrid}" 
                          SelectedItem="{Binding SelectedUser}" ItemsSource="{Binding DataSource}">
                    <DataGrid.Columns>
                        <DataGridTemplateColumn Width="Auto" CanUserResize="False">
                            <DataGridTemplateColumn.CellTemplate>
                                <DataTemplate>
                                    <CheckBox VerticalAlignment="Center"
                          IsChecked="{Binding Selected,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"/>
                                </DataTemplate>
                            </DataGridTemplateColumn.CellTemplate>
                        </DataGridTemplateColumn>
                        <DataGridTemplateColumn Header="#" CanUserResize="False">
                            <DataGridTemplateColumn.CellTemplate>
                                <DataTemplate>
                                    <TextBlock Text="{Binding Converter={StaticResource rowNumber},
    RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type DataGridRow},AncestorLevel=1}}"/>
                                </DataTemplate>
                            </DataGridTemplateColumn.CellTemplate>
                        </DataGridTemplateColumn>
                        <DataGridTextColumn Width="*"  Binding="{Binding Code}">
                            <DataGridTextColumn.Header>
                                <TextBlock Text="{DynamicResource HMI.User.Code}"/>
                            </DataGridTextColumn.Header>
                        </DataGridTextColumn>
                        <DataGridTextColumn Width="*"  Binding="{Binding Username}">
                            <DataGridTextColumn.Header>
                                <TextBlock Text="{DynamicResource HMI.User.Account}"/>
                            </DataGridTextColumn.Header>
                        </DataGridTextColumn>
                        <DataGridTextColumn Width="*" Binding="{Binding Name}">
                            <DataGridTextColumn.Header>
                                <TextBlock Text="{DynamicResource HMI.User.RealName}"/>
                            </DataGridTextColumn.Header>
                        </DataGridTextColumn>
                        <!--<DataGridTextColumn Width="*" Binding="{Binding RoleCode}" Header="角色编号" />
    <DataGridTextColumn Width="*" Binding="{Binding RoleName}" Header="角色名称" />-->
                        <DataGridTemplateColumn Width="110" IsReadOnly="True" CanUserResize="False">
                            <DataGridTemplateColumn.Header>
                                <TextBlock Text="{DynamicResource App.Opt}"/>
                            </DataGridTemplateColumn.Header>
                            <DataGridTemplateColumn.CellTemplate>
                                <DataTemplate>
                                    <StackPanel Orientation="Horizontal">
                                        <Button x:Name="editBtn" Style="{StaticResource EditLink}" Margin="0,0,10,0"
                        DataContext="{Binding }"
                        Click="Button_Click"/>
                                        <Button x:Name="delBtn" Style="{StaticResource DeleteLink}"
                        DataContext="{Binding }"
                        Click="Button_Click"/>
                                    </StackPanel>
                                </DataTemplate>
                            </DataGridTemplateColumn.CellTemplate>
                        </DataGridTemplateColumn>
                    </DataGrid.Columns>
                </DataGrid>
            </StackPanel>
        </Border>
 
        <Border Grid.Column="1" Style="{StaticResource CardBoarder}" Margin="2,0,0,0">
            <StackPanel>
                <DockPanel Margin="0,0,0,10" >
                    <Button DockPanel.Dock="Right" Style="{StaticResource SaveBtn}"
                            x:Name="saveRoleBtn" Click="Button_Click"/>
                    <TextBlock DockPanel.Dock="Left" FontSize="{StaticResource TitleFontSize}" 
                           VerticalAlignment="Center" HorizontalAlignment="Left" Text="{DynamicResource HMI.User.Role}"/>
                </DockPanel>
 
                <DataGrid x:Name="roleTable" Style="{StaticResource DefaultDataGrid}" SelectionMode="Single" 
                          ItemsSource="{Binding Roles}">
                    <DataGrid.Columns>
                        <DataGridTemplateColumn Width="Auto" CanUserResize="False">
                            <DataGridTemplateColumn.Header>
                                <TextBlock Text="{DynamicResource App.Granted}"/>
                            </DataGridTemplateColumn.Header>
                            <DataGridTemplateColumn.CellTemplate>
                                <DataTemplate>
                                    <CheckBox VerticalAlignment="Center" 
                    HorizontalAlignment="Center" IsChecked="{Binding Selected,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"/>
                                </DataTemplate>
                            </DataGridTemplateColumn.CellTemplate>
                        </DataGridTemplateColumn>
 
                        <DataGridTextColumn Header="#" Binding="{Binding Converter={StaticResource rowNumber},
          RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type DataGridRow},AncestorLevel=1}}"
                  CanUserResize="False"/>
                        <DataGridTextColumn Width="*" Binding="{Binding RoleCode}">
                            <DataGridTextColumn.Header>
                                <TextBlock Text="{DynamicResource HMI.Role.Code}"/>
                            </DataGridTextColumn.Header>
                        </DataGridTextColumn>
                        <DataGridTextColumn Width="*" Binding="{Binding RoleName}">
                            <DataGridTextColumn.Header>
                                <TextBlock Text="{DynamicResource HMI.Role.Name}"/>
                            </DataGridTextColumn.Header>
                        </DataGridTextColumn>
                    </DataGrid.Columns>
                </DataGrid>
 
            </StackPanel>
        </Border>
    </Grid>
</hb:PluginControl>