ListView 中的复选框 - Add_Click

问题描述 投票:0回答:1

我在列表视图中有一个复选框:

                <ListView x:Name="listCertificate" HorizontalAlignment="Left"  Margin="15,15,0,0" VerticalAlignment="Top" Width="350">
                    <ListView.View>
                        <GridView AllowsColumnReorder="true" ColumnHeaderToolTip="InfoPaquet">
                            <GridViewColumn Header="Checked">
                                <GridViewColumn.CellTemplate>
                                    <DataTemplate>
                                        <CheckBox IsChecked="{Binding Checked}"/>
                                    </DataTemplate>
                                </GridViewColumn.CellTemplate>
                            </GridViewColumn>
                            <GridViewColumn DisplayMemberBinding="{Binding NotBefore}">
                                <GridViewColumnHeader>Valid From</GridViewColumnHeader>
                            </GridViewColumn>
                            <GridViewColumn DisplayMemberBinding="{Binding NotAfter}">
                                <GridViewColumnHeader>Valid To</GridViewColumnHeader>
                            </GridViewColumn>
                            <GridViewColumn DisplayMemberBinding="{Binding Subject}">
                                <GridViewColumnHeader>Subject</GridViewColumnHeader>
                            </GridViewColumn>
                        </GridView>
                    </ListView.View>
                </ListView>

现在我也想添加一项功能,当我选中一个复选框时,所有其他复选框都将被禁用。基本上一次只能勾选一个复选框。

我的问题是如何获得我单击的一个复选框:

$hash.listCertificate = $hash.Window.FindName('listCertificate')
    $hash.listCertificate.Add_PreviewMouseLeftButtonDown({
        param([System.Object]$sender, [System.EventArgs]$Event)
        Write-Host $Event.OriginalSource.text
        Write-Host $Event.SelectedIndex
    })

    hash.listCertificate.View.Columns[0].Add_Click({
        HandleCheckBoxChecked $_
    })

我尝试了不同的方法,但它们都是错误的。另外我不太确定如何了解像 Add_Click 这样的函数。

wpf powershell
1个回答
0
投票

尝试:

  <GridViewColumn Header="Checked">
      <GridViewColumn.CellTemplate>
          <DataTemplate>
              <RadioButton IsChecked="{Binding Checked}"
                           GroupName="listCertificateGroup"/>
          </DataTemplate>
      </GridViewColumn.CellTemplate>
  </GridViewColumn>
© www.soinside.com 2019 - 2024. All rights reserved.