alielie
2025-11-21 3a471ae651b228231bebb3a2d438baa1d4ac0261
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
<pu:WindowX x:Class="Plugin.DOControl.ControlList"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
            xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
            xmlns:local="clr-namespace:Plugin.DOControl"
            xmlns:pw="https://opensource.panuon.com/wpf"
            xmlns:pu="https://opensource.panuon.com/wpf-ui"
            xmlns:dp="clr-namespace:HMI.UI.DpUtil;assembly=HMI.UI"
            mc:Ignorable="d"
            Title="Form"
            Height="800"
            SizeToContent="Manual"
            WindowStartupLocation="CenterOwner"
            Style="{StaticResource ModalWindow}">
    <Grid Margin="10" dp:GridHelper.Space="10">
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="Auto"/>
            <RowDefinition/>
        </Grid.RowDefinitions>
        
        <DockPanel Grid.Row="0">
            <StackPanel DockPanel.Dock="Right" Style="{StaticResource ButtonGroup}">
                <Button Style="{StaticResource AddBtn}"
                            x:Name="addBtn" Click="Button_Click"/>
                <Button Style="{StaticResource RfhBtn}"
                            x:Name="refreshBtn" Click="Button_Click"/>
 
                <Button Style="{StaticResource DelBtn}" 
                        x:Name="delBatchBtn" Click="Button_Click"/>
 
                <Button x:Name="exportBtn"
                            Style="{StaticResource ExportBtn}" Click="Button_Click"/>
                <Button x:Name="importBtn" Style="{StaticResource ImportBtn}" Click="Button_Click"/>
            </StackPanel>
            <TextBlock FontSize="{StaticResource TitleFontSize}" 
VerticalAlignment="Center" HorizontalAlignment="Left" Text="{DynamicResource doc.list}"/>
        </DockPanel>
 
 
        <DataGrid Grid.Row="2" x:Name="table" Style="{StaticResource DefaultDataGrid}" ItemsSource="{Binding Datasource}">
            <DataGrid.Columns>
                <DataGridTemplateColumn Header="" Width="Auto" CanUserResize="False">
                    <DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <CheckBox VerticalAlignment="Center" IsChecked="{Binding IsSelected,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 Group}">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{DynamicResource doc.group}"/>
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
                <DataGridTextColumn Width="*" Binding="{Binding Name}">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{DynamicResource doc.name}"/>
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
 
                <DataGridTextColumn Width="*" Binding="{Binding Address}">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{DynamicResource doc.address}"/>
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
 
                <DataGridTextColumn Width="*" Binding="{Binding ReadOnly}">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{DynamicResource doc.readOnly}"/>
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
 
                <DataGridTextColumn Width="*" Binding="{Binding PressDownValue}">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{DynamicResource doc.pressDownValue}"/>
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
 
                <DataGridTextColumn Width="*" Binding="{Binding PressUpValue}">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{DynamicResource doc.pressUpValue}"/>
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
 
                <DataGridTextColumn Width="*" Binding="{Binding ControlType}">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{DynamicResource doc.controlType}"/>
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
 
                <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}"
    Click="Button_Click" Margin="0,0,10,0"
    DataContext="{Binding }"/>
                                <Button x:Name="delBtn" Style="{StaticResource DeleteLink}" 
    DataContext="{Binding }"
    Click="Button_Click"/>
                            </StackPanel>
                        </DataTemplate>
                    </DataGridTemplateColumn.CellTemplate>
                </DataGridTemplateColumn>
            </DataGrid.Columns>
        </DataGrid>
    </Grid>
</pu:WindowX>