Grid 和 DataGridTemplateColumn

本文介绍如何在WPF应用程序中使用DataGrid控件实现数据的显示与删除功能。通过自定义DataGridTemplateColumn,可以添加删除按钮,并在点击事件中确认删除;同时利用复选框批量选择数据进行删除。此方法适用于需要对数据进行编辑的应用场景。

<Grid x:Name="LayoutRoot" Background="White" Height="421" Width="442">
        <sdk:DataGrid AutoGenerateColumns="False" Height="338" HorizontalAlignment="Left" Margin="12,0,0,0" Name="dataGrid1" VerticalAlignment="Top" Width="376"  >

            <sdk:DataGrid.Columns>

                <sdk:DataGridTemplateColumn Header="名字">
                    <sdk:DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <TextBlock Text="{Binding Name}"  />
                        </DataTemplate>
                    </sdk:DataGridTemplateColumn.CellTemplate>
                </sdk:DataGridTemplateColumn>
               
                <sdk:DataGridTemplateColumn Header="删除操作">
                    <sdk:DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <Button Name="button_Delete" Content="删除"  Click="button_Delete_Click"     />
                        </DataTemplate>
                    </sdk:DataGridTemplateColumn.CellTemplate>
                </sdk:DataGridTemplateColumn>

                <sdk:DataGridTemplateColumn  HeaderStyle="{StaticResource DataGridColumnHeaderCheckBox}"   >
                    <sdk:DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <CheckBox x:Name="DeleteEntry" />
                        </DataTemplate>
                    </sdk:DataGridTemplateColumn.CellTemplate>
                </sdk:DataGridTemplateColumn>

            </sdk:DataGrid.Columns>

            <sdk:DataGrid.RowDetailsTemplate>

                <DataTemplate>
                    <StackPanel>
                        <TextBlock Text="{Binding Age}"  />
                        <TextBlock Text="{Binding IsMan}"  />
                    </StackPanel>

                </DataTemplate>
            </sdk:DataGrid.RowDetailsTemplate>

        </sdk:DataGrid>

        <Button Content="删除选中项" Height="23" HorizontalAlignment="Left" Margin="341,368,0,0" Name="button1" VerticalAlignment="Top" Width="75" Click="button1_Click" />

</Grid>

 private void button_Delete_Click(object sender, RoutedEventArgs e)
        {
            if (MessageBoxResult.OK == MessageBox.Show("确定要删除吗?", "注意!", MessageBoxButton.OKCancel))
            {
                var item = (dataGrid1.SelectedItem as Person);
                itemList.Remove(item);
            }
        }

 

private void button1_Click(object sender, RoutedEventArgs e)
        {
            List<int> DeleteItemIndex = new List<int>();

            for (int i = 0; i < itemList.Count; i++)
            {
                var p = itemList[i];

                CheckBox selectItem = dataGrid1.Columns[dataGrid1.Columns.Count - 1].GetCellContent(p) as CheckBox;

                if (null != selectItem && selectItem.IsChecked == true)
                {
                    DeleteItemIndex.Add(i);
                }
            }

            foreach (var index in DeleteItemIndex.OrderByDescending(c => c))
            {
                itemList.RemoveAt(index);
            }

        }

 

<UserControl x:Class="GD_LookV4.UserControl2" 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" mc:Ignorable="d" d:DesignHeight="300" d:DesignWidth="300"> <Grid> <Grid> <Grid Grid.Row="1"> <Grid.ColumnDefinitions> <ColumnDefinition Width="auto"/> <ColumnDefinition/> <ColumnDefinition Width="auto"/> <ColumnDefinition Width="auto"/> <ColumnDefinition Width="auto"/> <ColumnDefinition Width="auto"/> <ColumnDefinition Width="auto"/> <ColumnDefinition Width="auto"/> <ColumnDefinition Width="auto"/> <ColumnDefinition Width="auto"/> <ColumnDefinition Width="auto"/> <ColumnDefinition Width="auto"/> <ColumnDefinition Width="auto"/> </Grid.ColumnDefinitions> <TextBlock Text="裂隙数据" VerticalAlignment="Center" Name="Fissure_Data"/> <CheckBox Grid.Column="2" Content="全部显示" IsChecked="False" VerticalAlignment="Center" Name="All_Show" Margin="0,4,0,5" Grid.ColumnSpan="2"/> <Button Grid.Column="4" Height="25" Width="auto" Content="导出Excel" Name="Export_Excel"/> <Button Grid.Column="7" Height="25" Content="删除" Name="Delete1" Grid.ColumnSpan="5"/> </Grid> <Grid> <DataGrid Grid.Row="1" x:Name="dataGrid_crack" ItemsSource="{Binding}" AutoGenerateColumns="False" SelectionUnit="FullRow" CanUserAddRows="False" VerticalScrollBarVisibility="Visible" MaxHeight="300" Height="Auto" > <DataGrid.ContextMenu> <ContextMenu> <MenuItem Header="编辑" Name="Edit1"/> <MenuItem Header="跳转" Name="Skip1"/> <MenuItem Header="删除" Name="Delete2"/> </ContextMenu> </DataGrid.ContextMenu> <DataGrid.Columns> <DataGridTemplateColumn Header="显示" Width="35" x:Name="show1"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <CheckBox HorizontalAlignment="Center" /> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTemplateColumn Header="颜色" Width="35" x:Name="color1"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTextColumn Header="深度" IsReadOnly="True" Width="auto" x:Name="depth1"/> <DataGridTextColumn Header="倾向" IsReadOnly="True" Width="auto" x:Name="tendency1"/> <DataGridTextColumn Header="倾角" IsReadOnly="True" Width="auto" x:Name="Dip1"/> <DataGridTemplateColumn Header="缝宽" Width="auto" x:Name="Slitwidth1"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="auto"/> <ColumnDefinition/> <ColumnDefinition Width="auto"/> </Grid.ColumnDefinitions> <TextBlock Grid.Column="0" /> <TextBlock Grid.Column="2" Background="Gray" Foreground="White" Text="测量"/> </Grid> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTextColumn Header="描述" Width="auto" MaxWidth="100" IsReadOnly="True" x:Name="describe"/> </DataGrid.Columns> </DataGrid> <GridSplitter Height="5" HorizontalAlignment="Stretch" Grid.Row="4" ScrollViewer.CanContentScroll="True"/> <!-- <Grid Grid.Row="4"> <Grid.ColumnDefinitions> <ColumnDefinition Width="auto"/> <ColumnDefinition/> <ColumnDefinition Width="13.667"/> <ColumnDefinition Width="51.333"/> <ColumnDefinition Width="auto"/> <ColumnDefinition Width="auto"/> <ColumnDefinition Width="22.333"/> <ColumnDefinition Width="7.667"/> </Grid.ColumnDefinitions> <TextBlock Text="孔段描述" VerticalAlignment="Center" Margin="0,5,0,4" Name="Hole_Description"/> <CheckBox Grid.Column="2" Content="全部显示" IsChecked="False" VerticalAlignment="Center" Name="AllShow2" Grid.ColumnSpan="2" Margin="0,4,0,5" HorizontalAlignment="Right" Width="65"/> <Button Grid.Column="4" Height="25" Width="auto" Content="导出Excel" Name="ExportExcel" /> <Button Grid.Column="5" Height="25" Width="auto" Content="添加" Name="AddTo"/> <Button Grid.Column="6" Height="25" Width="auto" Content="删除" Name="delete2" Grid.ColumnSpan="2"/> </Grid> <DataGrid Grid.Row="5" x:Name="dataGrid_segment" AutoGenerateColumns="False" SelectionUnit="FullRow" CanUserAddRows="False" ScrollViewer.CanContentScroll="False" Grid.RowSpan="2" MaxHeight="250" VerticalScrollBarVisibility="Visible"> <DataGrid.ContextMenu> <ContextMenu> <MenuItem Header="编辑" Name="Edit2"/> <MenuItem Header="跳转" Name="Jump2"/> <MenuItem Header="删除" Name="delete3"/> </ContextMenu> </DataGrid.ContextMenu> <DataGrid.Columns> <DataGridTemplateColumn Header="显示" Width="35" x:Name="Show2"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <CheckBox HorizontalAlignment="Center" /> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTemplateColumn Header="颜色" Width="35" x:Name="Color2"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <Rectangle Stroke="Black" /> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTextColumn Header="起始深度" IsReadOnly="True" Width="auto" x:Name="StarDepth"/> <DataGridTextColumn Header="结束深度" IsReadOnly="True" Width="auto" x:Name="EndDepth"/> <DataGridTextColumn Header="描述" IsReadOnly="True" x:Name="Describe"/> <DataGridTemplateColumn Header="面积" Width="auto" x:Name="Area"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <Grid> <TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" Background="Gray" Foreground="White" Text="测量" /> </Grid> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTemplateColumn Header="距离" Width="auto" x:Name="Lenth"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <Grid> <TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" Background="Gray" Foreground="White" Text="测量" /> </Grid> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> </DataGrid.Columns > </DataGrid> <GridSplitter Height="5" HorizontalAlignment="Stretch" Grid.Row="6" ScrollViewer.CanContentScroll="True"/> <Grid Grid.Row="7"> <Grid.ColumnDefinitions> <ColumnDefinition Width="auto"/> <ColumnDefinition/> <ColumnDefinition Width="13.667"/> <ColumnDefinition Width="51.333"/> <ColumnDefinition Width="auto"/> <ColumnDefinition Width="auto"/> <ColumnDefinition Width="22.333"/> <ColumnDefinition Width="7.667"/> </Grid.ColumnDefinitions> <TextBlock Text="沉渣描述" VerticalAlignment="Center" Margin="0,5,0,4" Name="Grid_Description"/> <CheckBox Grid.Column="2" Content="全部显示" IsChecked="False" VerticalAlignment="Center" Name="AllShowGrid" Grid.ColumnSpan="2" Margin="0,4,0,5" HorizontalAlignment="Right" Width="65"/> <Button Grid.Column="4" Height="25" Width="auto" Content="导出Excel" Name="ExportExceGrid" /> <Button Grid.Column="5" Height="25" Width="auto" Content="添加" Name="AddGrid"/> <Button Grid.Column="6" Height="25" Width="auto" Content="删除" Name="deleteGrid" Grid.ColumnSpan="2"/> </Grid> <DataGrid Grid.Row="8" x:Name="dataGrid_grid" AutoGenerateColumns="False" SelectionUnit="FullRow" CanUserAddRows="False" ScrollViewer.CanContentScroll="False" Grid.RowSpan="2" MaxHeight="250" VerticalScrollBarVisibility="Visible"> <DataGrid.ContextMenu> <ContextMenu> <MenuItem Header="编辑" Name="EditGrid"/> <MenuItem Header="跳转" Name="JumpGrid"/> <MenuItem Header="删除" Name="deleteGrid1"/> </ContextMenu> </DataGrid.ContextMenu> <DataGrid.Columns> <DataGridTemplateColumn Header="显示" Width="35" x:Name="Show3"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <CheckBox HorizontalAlignment="Center" /> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTemplateColumn Header="颜色" Width="35" x:Name="Color3"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <Rectangle Stroke="Black" /> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTextColumn Header="起始深度" IsReadOnly="True" Width="auto" x:Name="StarDepth3"/> <DataGridTextColumn Header="结束深度" IsReadOnly="True" Width="auto" x:Name="EndDepth3"/> <DataGridTextColumn Header="描述" Binding="{Binding description}" IsReadOnly="True" x:Name="Describe3"/> </DataGrid.Columns > </DataGrid> --> <!--<Button Content="Button" HorizontalAlignment="Right" VerticalAlignment="Top" Width="75" x:Name="btntk"/>--> <!--<Grid Width="auto" x:Name="StackPanel_dataPanel2" Grid.Column="1"> </Grid>--> </Grid> </Grid> </Grid> </UserControl> 讲解下每行的意思
11-05
<Window x:Class="S1.MainWindow" 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:S1" mc:Ignorable="d" Icon="/A1/工具箱/视图图片/Logo/登录_微信登录.png" MinHeight="720" MinWidth="1280" WindowStyle="None" AllowsTransparency="False" WindowStartupLocation="CenterScreen" Title="MainWindow" Height="720" Width="1280"> <!--标题栏属性--> <WindowChrome.WindowChrome> <WindowChrome UseAeroCaptionButtons="False" NonClientFrameEdges="None" CaptionHeight="15" ResizeBorderThickness="0" GlassFrameThickness="0"/> </WindowChrome.WindowChrome> <!--Main窗体UI--> <Grid> <Grid.RowDefinitions> <RowDefinition Height="40"/> <RowDefinition Height="100*"/> <RowDefinition Height="27"/> </Grid.RowDefinitions> <!--标题栏--> <DockPanel Grid.Row="0" Grid.Column="0" Style="{StaticResource A__DockPanel}"> <Image Source="/A1/工具箱/视图图片/Logo/logo2.png" Width="35" Height="25" Margin="20,0,0,0" DockPanel.Dock="Left"/> <TextBlock Text="杭州微纳智感科技AOI检测系统" VerticalAlignment="Center" HorizontalAlignment="Left" Margin="15,0,0,0" Foreground="White" FontSize="14" FontWeight="Bold"/> <StackPanel Orientation="Horizontal" Margin="0,0,0,0" DockPanel.Dock="Right" HorizontalAlignment="Right"> <Button x:Name="LoginBtu" Style="{StaticResource LoginButStyle}" Command="{Binding LoginCmd}"> <Button.Background> <ImageBrush ImageSource="{Binding Picture}" Stretch="UniformToFill"/> </Button.Background> </Button> <Button x:Name="MinBtn" Style="{StaticResource MinBtnStyle}" Content="—" Command="{Binding MinFormCmd}"/> <Button x:Name="MaxBtn" Style="{StaticResource MaxBtnStyle}" Content="□" Command="{Binding MaxFormCmd}"/> <Button x:Name="CloseBtn" Style="{StaticResource CloseBtnStyle}" Content="×" Command="{Binding ExitFormCmd}"/> </StackPanel> </DockPanel> <!--状态栏--> <Grid Grid.Row="2" Grid.Column="0" Background="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}"> <!-- 主内容区域 --> <StatusBar Background="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}"> <StatusBar.ItemsPanel> <ItemsPanelTemplate> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto"/> <ColumnDefinition Width="*"/> <ColumnDefinition Width="Auto"/> </Grid.ColumnDefinitions> </Grid> </ItemsPanelTemplate> </StatusBar.ItemsPanel> <!-- 左侧内容(可选) --> <StatusBarItem> <StackPanel Orientation="Horizontal"> <!--Image Margin="3,0,3,0" Source="/Data/List/Logo/气泡.png" Width="15" Height="15"/--> <TextBlock Margin="5,0,0,0" Text="🗨 就绪" Foreground="White"/> </StackPanel> </StatusBarItem> <!-- 中间填充(可选) --> <StatusBarItem Grid.Column="1"> <!-- 中间内容(留空或添加其他控件) --> </StatusBarItem> <!-- 日期时间绑定 --> <StatusBarItem Grid.Column="2"> <StackPanel Orientation="Horizontal" HorizontalAlignment="Right"> <TextBlock Margin="0" Text="[用户: " Foreground="White" FontWeight="Bold" FontSize="11"/> <TextBlock Margin="0" Text="{Binding YongHu}" Foreground="White" FontWeight="Bold" FontSize="11"/> <TextBlock Margin="0" Text="]" Foreground="White" FontWeight="Bold" FontSize="11"/> <TextBlock Margin="8,0,5,0" Text="||" Foreground="White" FontWeight="Bold" FontSize="11"/> <TextBlock Margin="5,0,0,0" Text="时间:" Foreground="White" FontWeight="Bold" FontSize="11"/> <TextBlock Text="{Binding CurrentDateTime}" Margin="3,0,5,0" Foreground="White" FontWeight="Bold" FontSize="11"/> </StackPanel> </StatusBarItem> </StatusBar> </Grid> <!--客户栏--> <Grid Grid.Row="1" Grid.Column="0"> <Grid.ColumnDefinitions> <ColumnDefinition Width="3"/> <ColumnDefinition Width="30"/> <ColumnDefinition Width="100*"/> <ColumnDefinition Width="3"/> </Grid.ColumnDefinitions> <Grid Grid.Row="0" Grid.Column="0" Background="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}"/> <Grid Grid.Row="0" Grid.Column="5" Background="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}"/> <!--功能区--> <Grid Grid.Row="0" Grid.Column="1" Background="{DynamicResource {x:Static SystemColors.ControlLightBrushKey}}"> <Grid.RowDefinitions> <RowDefinition Height="auto"/> <RowDefinition Height="100*"/> <RowDefinition Height="auto"/> </Grid.RowDefinitions> <StackPanel Grid.Row="0" Grid.Column="0"> <Button x:Name="ToggleButton" ToolTip="展开菜单" Click="ToggleButton_Click" Margin="0,5,0,5"> <Button.Background> <ImageBrush ImageSource="/A1/工具箱/视图图片/Logo/展开1.png" Stretch="UniformToFill"/> </Button.Background> </Button> <Button x:Name="Text" ToolTip="右键:文件路径" Margin="0,5,0,5"> <Button.Background> <ImageBrush ImageSource="/A1/工具箱/视图图片/Logo/文件夹.png" Stretch="UniformToFill"/> </Button.Background> <Button.ContextMenu > <ContextMenu Background="{DynamicResource {x:Static SystemColors.ControlBrushKey}}"> <MenuItem Header="打开图片" Command="{Binding RunningloadFormCmd}"/> <MenuItem Header="打开数据" Command="{Binding RunParamloadFormCmd}"/> <MenuItem Header="打开配置" Command="{Binding RunParamloadFormCmd}"/> </ContextMenu> </Button.ContextMenu> </Button> <Button ToolTip="右键:视觉VPP" Margin="0,5,0,5"> <Button.Background> <ImageBrush ImageSource="/A1/工具箱/视图图片/Logo/截图 (3).png" Stretch="UniformToFill"/> </Button.Background> <Button.ContextMenu > <ContextMenu Background="{DynamicResource {x:Static SystemColors.ControlBrushKey}}"> <MenuItem Header="左工位VPP" Command="{Binding SizeVppCmd1}"/> <MenuItem Header="右工位VPP" Command="{Binding SizeVppCmd2}"/> <MenuItem Header="右工位灰度" Command="{Binding SizeVppCmd3}"/> <MenuItem Header="右工位灰度" Command="{Binding SizeVppCmd4}"/> </ContextMenu> </Button.ContextMenu> </Button> </StackPanel> <StackPanel Grid.Row="2" Grid.Column="0"> <Button ToolTip="右键:打开设置" Margin="0,0,0,10"> <Button.Background> <ImageBrush ImageSource="/A1/工具箱/视图图片/Logo/设置.png" Stretch="UniformToFill"/> </Button.Background> <Button.ContextMenu > <ContextMenu Background="{DynamicResource {x:Static SystemColors.ControlBrushKey}}"> <MenuItem Header="设置MES参数" Command="{Binding ManualCmd}"/> <MenuItem Header="设置系统参数" Command="{Binding SysParamloadFormCmd}"/> <MenuItem Header="设置运行参数" Command="{Binding RunningloadFormCmd}"/> <MenuItem Header="设置相机参数" Command="{Binding RunParamloadFormCmd}"/> <MenuItem Header="设置光源参数" Command="{Binding LightloadFormCmd}"/> <MenuItem Header="设置缺陷参数" Command="{Binding DefectListReadCmd}"/> </ContextMenu> </Button.ContextMenu> </Button> </StackPanel> </Grid> <!--客户区--> <Grid Grid.Row="0" Grid.Column="2"> <DockPanel LastChildFill="True"> <!-- 左侧折叠菜单 --> <Border x:Name="MenuPanel" DockPanel.Dock="Left" Width="2" Background="#FFE1E1E1" BorderThickness="0,0,2,0" BorderBrush="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}"> <Grid> <!-- 菜单内容区域 --> <ScrollViewer VerticalScrollBarVisibility="Auto" Background="{DynamicResource {x:Static SystemColors.WindowBrushKey}}"> <StackPanel x:Name="MenuContent" Background="{DynamicResource {x:Static SystemColors.WindowBrushKey}}"/> </ScrollViewer> </Grid> </Border> <!-- 主内容区域 --> <Grid Background="{DynamicResource {x:Static SystemColors.WindowBrushKey}}"> <Grid.ColumnDefinitions> <ColumnDefinition Width="70*"/> <ColumnDefinition Width="3"/> <ColumnDefinition Width="30*"/> </Grid.ColumnDefinitions> <GridSplitter Grid.Row="0" Grid.Column="1" Width="2" Grid.RowSpan="3" Background="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}" HorizontalAlignment="Center" Margin="0" /> <!-- 检测尺寸缺陷显示区 --> <Grid Grid.Row="0" Grid.Column="0"> <TabControl Grid.Row="0" Grid.Column="0"> <TabItem Header="主界面" Background="{DynamicResource {x:Static SystemColors.WindowBrushKey}}"> <!--Lift And Right--> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="50*"/> <ColumnDefinition Width="1*"/> <ColumnDefinition Width="50*"/> </Grid.ColumnDefinitions> <GridSplitter Grid.Row="0" Grid.Column="1" Width="3" Grid.RowSpan="2" Background="{DynamicResource {x:Static SystemColors.ControlLightBrushKey}}" HorizontalAlignment="Center" /> <!--Lift--> <Grid Grid.Row="0" Grid.Column="0"> <Grid.RowDefinitions> <RowDefinition Height="12*"/> <RowDefinition Height="1*"/> <RowDefinition Height="5*"/> <RowDefinition Height="1*"/> <RowDefinition Height="83*"/> </Grid.RowDefinitions> <GridSplitter Grid.Row="1" Grid.Column="0" Height="4" VerticalAlignment="Bottom" HorizontalAlignment="Stretch" Background="LightGray" Margin="0,0,0,1" /> <GridSplitter Grid.Row="3" Grid.Column="0" Height="3" VerticalAlignment="Center" HorizontalAlignment="Stretch" Background="LightGray" Margin="0,1" /> <Grid Grid.Row="0" Grid.Column="0" > <Label x:Name="LeftInfoLabel" Width="auto" Height="auto" FontFamily="宋体" Background="{Binding ShowResultState.ShowState1.ShowBrush}" Content="{Binding ShowResultState.ShowState1.ShowName}" FontSize="50" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" ></Label> </Grid> <Grid Grid.Row="2" Grid.Column="0"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="7*"/> <ColumnDefinition Width="10*"/> <ColumnDefinition Width="80*"/> </Grid.ColumnDefinitions> <TextBox Grid.Row="0" Grid.Column="0" Text="{Binding leftTongdao}" Margin="3,2,3,2" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"/> <Label Grid.Row="0" Grid.Column="1" Content="左SN:" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"/> <TextBox Grid.Row="0" Grid.Column="2" Text="{Binding leftCode}" Margin="3,3,3,3" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"/> </Grid> </Grid> <Grid Grid.Row="4" Grid.Column="0"> <DataGrid Name="DataListGrid1" CanUserAddRows="False" CanUserDeleteRows="False" AutoGenerateColumns="False" HeadersVisibility="All" ItemsSource="{Binding leftSizeTypeList}" Grid.ColumnSpan="2" Margin="0" > <DataGrid.Columns> <DataGridTextColumn Header="ID" Binding="{Binding SizeID}" IsReadOnly= "True" Width="2*"/> <DataGridTextColumn Header="Name" Binding="{Binding SizeName}" IsReadOnly= "True" Width="3*"/> <DataGridTextColumn Header="Standard" Binding="{Binding SizeStandard}" IsReadOnly= "True" Width="3*"/> <DataGridTextColumn Header="Upper" Binding="{Binding SizeUpper}" IsReadOnly= "True" Width="3*"/> <DataGridTextColumn Header="Lower" Binding="{Binding SizeLower}" IsReadOnly= "True" Width="3*"/> <DataGridTextColumn Header="Value" Binding="{Binding SizeValue}" IsReadOnly= "True" Width="3*"/> <DataGridTemplateColumn Header="Result" Width="4*"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBox Width="75" Height="25" BorderThickness="0" Text="{Binding SizeRes}" Foreground="White" Background="{Binding BackColor}"/> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> </DataGrid.Columns> </DataGrid> </Grid> </Grid> <!--Right--> <Grid Grid.Row="0" Grid.Column="2"> <Grid.RowDefinitions> <RowDefinition Height="12*"/> <RowDefinition Height="1*"/> <RowDefinition Height="5*"/> <RowDefinition Height="1*"/> <RowDefinition Height="83*"/> </Grid.RowDefinitions> <GridSplitter Grid.Row="1" Grid.Column="0" Height="3" VerticalAlignment="Center" HorizontalAlignment="Stretch" Background="LightGray" Margin="0,1" /> <GridSplitter Grid.Row="3" Grid.Column="0" Height="3" VerticalAlignment="Center" HorizontalAlignment="Stretch" Background="LightGray" Margin="0,1" /> <Grid Grid.Row="0" Grid.Column="0"> <Label x:Name="RightInfoLabel" Width="auto" Height="auto" Margin="0" FontFamily="宋体" Background="{Binding ShowResultState.ShowState2.ShowBrush}" Content="{Binding ShowResultState.ShowState2.ShowName}" FontSize="50" VerticalContentAlignment="Center" HorizontalContentAlignment="Center"></Label> </Grid> <Grid Grid.Row="2" Grid.Column="0"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="7*"/> <ColumnDefinition Width="10*"/> <ColumnDefinition Width="80*"/> </Grid.ColumnDefinitions> <TextBox Grid.Row="0" Grid.Column="0" Text="{Binding rightTongdao}" Margin="3,2,3,2" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"/> <Label Grid.Row="0" Grid.Column="1" Content="右SN:" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"></Label> <TextBox Grid.Row="0" Grid.Column="2" Text="{Binding rightCode}" Margin="1,1,1,1" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"/> </Grid> </Grid> <Grid Grid.Row="4" Grid.Column="0"> <DataGrid Name="DataListGrid2" CanUserAddRows="False" CanUserDeleteRows="False" AutoGenerateColumns="False" HeadersVisibility="All" ItemsSource="{Binding rightSizeTypeList}" Grid.ColumnSpan="2" Margin="0" > <DataGrid.Columns> <DataGridTextColumn Header="ID" Binding="{Binding SizeID}" IsReadOnly= "True" Width="2*"/> <DataGridTextColumn Header="Name" Binding="{Binding SizeName}" IsReadOnly= "True" Width="3*"/> <DataGridTextColumn Header="Standard" Binding="{Binding SizeStandard}" IsReadOnly= "True" Width="3*"/> <DataGridTextColumn Header="Upper" Binding="{Binding SizeUpper}" IsReadOnly= "True" Width="3*"/> <DataGridTextColumn Header="Lower" Binding="{Binding SizeLower}" IsReadOnly= "True" Width="3*"/> <DataGridTextColumn Header="Value" Binding="{Binding SizeValue}" IsReadOnly= "True" Width="3*"/> <DataGridTemplateColumn Header="Result" Width="4*"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBox Width="75" Height="25" BorderThickness="0" Text="{Binding SizeRes}" Foreground="White" Background="{Binding BackColor}"/> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> </DataGrid.Columns> </DataGrid> </Grid> </Grid> </Grid> </TabItem> </TabControl> </Grid> <!-- 实时监控/生产数据/数据统计 --> <Grid Grid.Row="0" Grid.Column="2"> <TabControl> <TabItem Header="实时监控"> <Grid> <Grid.RowDefinitions> <RowDefinition Height="30*"/> <RowDefinition Height="3"/> <RowDefinition Height="30*"/> <RowDefinition Height="3"/> <RowDefinition Height="30*"/> </Grid.RowDefinitions> <GridSplitter Grid.Row="1" Grid.Column="0" Height="2" VerticalAlignment="Center" HorizontalAlignment="Stretch" Background="LightGray" Margin="0,1" /> <GridSplitter Grid.Row="3" Grid.Column="0" Height="2" VerticalAlignment="Center" HorizontalAlignment="Stretch" Background="LightGray" Margin="0,1" /> <Grid Grid.Row="0" Grid.Column="0"> </Grid> <Grid Grid.Row="2" Grid.Column="0"> </Grid> <ScrollViewer Grid.Column="0" Grid.Row="3" Background="White" BorderBrush="AliceBlue" Margin="3" Grid.RowSpan="2" > <TextBlock x:Name="SystemMessage" TextWrapping="Wrap" Text="{Binding MsgInfo}" Background="White" Foreground="Black" /> </ScrollViewer> </Grid> </TabItem> <TabItem Header="生产数据"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="50*"/> <ColumnDefinition Width="3"/> <ColumnDefinition Width="50*"/> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="50*"/> <RowDefinition Height="3"/> <RowDefinition Height="50*"/> <RowDefinition Height="3"/> <RowDefinition Height="50*"/> </Grid.RowDefinitions> <GridSplitter Grid.Column="0" Grid.Row="1" Grid.ColumnSpan="3" Height="3" VerticalAlignment="Center" HorizontalAlignment="Stretch" Background="LightGray" /> <GridSplitter Grid.Column="0" Grid.Row="3" Grid.ColumnSpan="3" Height="3" VerticalAlignment="Center" HorizontalAlignment="Stretch" Background="LightGray" /> <GridSplitter Grid.Column="1" Grid.Row="0" Width="3" Grid.RowSpan="5" Background="LightGray" HorizontalAlignment="Center" /> <WindowsFormsHost Grid.Row="0" Grid.Column="0" Name="ChartShow1" /> <WindowsFormsHost Grid.Row="0" Grid.Column="2" Name="ChartShow2" /> <WindowsFormsHost Grid.Row="2" Grid.Column="0" Name="ChartShow3" /> <WindowsFormsHost Grid.Row="2" Grid.Column="2" Name="ChartShow4" /> <WindowsFormsHost Grid.Row="4" Grid.Column="0" Name="ChartShow5" /> <WindowsFormsHost Grid.Row="4" Grid.Column="2" Name="ChartShow6" /> </Grid> </TabItem> <TabItem Header="数据统计"> <Grid> <Grid.RowDefinitions> <RowDefinition Height="30"/> <RowDefinition Height="3"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <!--日期选择--> <Grid Grid.Row="0" Height="auto"> <Grid.ColumnDefinitions> <ColumnDefinition Width="2*"/> <ColumnDefinition Width="1"/> <ColumnDefinition Width="2*"/> <ColumnDefinition Width="1"/> <ColumnDefinition Width="1*"/> </Grid.ColumnDefinitions> <DatePicker/> <ComboBox Grid.Column="2" SelectedIndex="{Binding LGDateSelectIndex}" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Grid.ColumnSpan="1" Margin="1"> <ComboBoxItem Content="白班合计"/> <ComboBoxItem Content="晚班合计"/> <ComboBoxItem Content="白晚班合计"/> <ComboBoxItem Content="月合计"/> <ComboBoxItem Content="年合计"/> </ComboBox> <!--查询按钮--> <Grid Grid.Column="4"> <Button Margin="1" Content="查询" Width="auto" Height="auto" Command="{Binding SearchProductDataCmd}" Foreground="{DynamicResource {x:Static SystemColors.ActiveCaptionTextBrushKey}}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/> </Grid> </Grid> <!--数据统计显示--> <Grid Grid.Row="2"> <DataGrid Name="ProductSearchGrid" CanUserAddRows="False" CanUserDeleteRows="False" AutoGenerateColumns="False" HeadersVisibility="All" ItemsSource="{Binding ProductSearchGridLists}" SelectedIndex="{Binding ProductSearchSelectIndex}" FontSize="13" Grid.ColumnSpan="2" Margin="1" > <DataGrid.Columns> <DataGridTextColumn Header="Time" Binding="{Binding Time}" IsReadOnly="True" Width="30*"/> <DataGridTextColumn Header="Total" Binding="{Binding Total}" IsReadOnly="True" Width="25*"/> <DataGridTextColumn Header="OK" Binding="{Binding OK}" IsReadOnly="True" Width="25*"/> <DataGridTextColumn Header="NG" Binding="{Binding NG}" IsReadOnly="True" Width="25*"/> </DataGrid.Columns> </DataGrid> </Grid> </Grid> </TabItem> </TabControl> </Grid> </Grid> </DockPanel> </Grid> </Grid> </Grid> </Window> DatePicker 的弹出日历标题显示太窄
11-01
<DataGrid.Columns> <DataGridTemplateColumn Header="孔段显示" Width="35" x:Name="Show2"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <CheckBox HorizontalAlignment="Center" /> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTemplateColumn Header="颜色" Width="35" x:Name="Color2"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <Rectangle Stroke="Black" /> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTextColumn Header="起始深度" IsReadOnly="True" Binding="{Binding SegStartDepth,StringFormat={}{0:F2}}" x:Name="StarDepth"/> <DataGridTextColumn Header="结束深度" IsReadOnly="True" Binding="{Binding SegEndDepth,StringFormat={}{0:F2}}" x:Name="EndDepth"/> <DataGridTextColumn Header="描述" Binding="{Binding description}" IsReadOnly="True" x:Name="Describe"/> <DataGridTemplateColumn Header="面积" Width="auto" x:Name="Area"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <Grid> <TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" Background="Gray" Foreground="White" Text="测量" /> </Grid> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTemplateColumn Header="距离" Width="auto" x:Name="Lenth"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <Grid> <TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" Background="Gray" Foreground="White" Text="测量" /> </Grid> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> </DataGrid.Columns > </DataGrid>
最新发布
11-09
<DataGrid Grid.Row="0" AutoGenerateColumns="False" x:Name="dg_AxisList" EnableColumnVirtualization="True" EnableRowVirtualization="True" VirtualizingPanel.IsVirtualizing="True" ItemsSource="{Binding Axis}" SelectedItem="{Binding SelectedAxis}" FontSize="12" RowHeaderWidth="20" SelectionUnit="FullRow" HeadersVisibility="Column" GridLinesVisibility="All" IsReadOnly="True" CanUserAddRows="False"> <DataGrid.Columns> <DataGridTemplateColumn Header="轴号" IsReadOnly="True" Width="50"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBlock Text="{ Binding AxisID}"/> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTemplateColumn Header="轴名称" IsReadOnly="True" Width="60"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBlock Text="{Binding AxisName}"/> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTemplateColumn Header="目标位置" IsReadOnly="True" Width="auto"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBlock Text="{Binding RunPos}"/> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTemplateColumn Header="当前位置" IsReadOnly="True" Width="auto"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBlock Text="{Binding CurPos}"/> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTemplateColumn Header="速度" IsReadOnly="True" Width="auto"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBlock Text="{Binding RunVel}"/> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTemplateColumn Header="是否启用轴"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <ToggleButton hc:VisualElement.HighlightBrush="LimeGreen" Style="{StaticResource ToggleButtonSwitch.Small}" IsChecked="{Binding Axis.IsEn}"/> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTextColumn Header="注释" Width="120" IsReadOnly="False" Binding="{Binding Note}"/> </DataGrid.Columns> </DataGrid>为什么 <ToggleButton>绑定不到数据
06-29
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值