小编Ban*_*ook的帖子

WPF DataGrid - 禁用某些列选择

我想禁用列 Field3 和 Field4 的选择 (参见图片)

Field1&2 值由用户输入,根据该值计算 Field3&4。

我想要的是 -

  1. 使用“tab”在输入单元格之间移动时,选择内容应从第 1 行字段 2 移动到第 2 行字段 1。
  2. 使用“箭头”移动时,无法选择字段 3 和字段 4。
  3. 可以删除行(提及这一点是因为我不确定实现其他点后的行为)。

这是我目前的 XAML -

<Window x:Class="OrderCalculator.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:OrderCalculator"
    mc:Ignorable="d"
    Title="Order Estimate" Background="LightGray" Height="500" Width="800" Name="UI">
<Grid>
    <DataGrid x:Name="ItemGrid" CanUserAddRows ="True" ItemsSource="{Binding ElementName=UI, Path=Items, Mode=TwoWay}" AutoGenerateColumns="False" HorizontalAlignment="Left" 
              Height="410" Margin="10,10,10,10" VerticalAlignment="Top" Width="420" HeadersVisibility="Column">
        <DataGrid.Resources>
            <Style TargetType="{x:Type DataGridColumnHeader}">
                <Setter Property="Background" Value="DarkGray"/>
                <Setter Property="FontWeight" Value="Bold"/>
                <Setter Property="BorderThickness" Value="0,0,1,2"/>
                <Setter Property="BorderBrush" Value="Black"/>
                <Setter Property="HorizontalContentAlignment" Value="Center"/>
            </Style>
        </DataGrid.Resources>
        <DataGrid.Columns>
            <DataGridTextColumn …
Run Code Online (Sandbox Code Playgroud)

wpf datagrid

1
推荐指数
1
解决办法
2943
查看次数

标签 统计

datagrid ×1

wpf ×1