gpt4 book ai didi

WPF - 单元格行中的复选框只读可能?

转载 作者:行者123 更新时间:2023-12-03 18:15:10 26 4
gpt4 key购买 nike

我有一个 ListView 动态绑定(bind)到相同类型的对象列表。

该对象有一个 bool 值。

有一个 ListView 列显示一个复选框,而不是该特定属性的“true”和“false”正常值。

有没有办法将该复选框设置为只读?否则有没有办法告诉点击来自事件“已检查”和“未检查”中的这一特定行,这些事件在代码后面执行一个方法?

谢谢!

最佳答案

您可以通过将 IsHitTestVisible 和 Focusable 设置为 false 来使任何控件只读。

XAML:

<Window x:Class="WpfApplication1.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:WpfApplication1="clr-namespace:WpfApplication1">

<StackPanel>
<ListView ItemsSource="{Binding}">
<ListView.View>
<GridView>
<GridViewColumn Header="Name" DisplayMemberBinding="{Binding Path=Name}" />
<GridViewColumn Header="Is Valid">
<GridViewColumn.CellTemplate>
<DataTemplate>
<CheckBox IsChecked="{Binding Path=IsValid}" IsHitTestVisible="False" Focusable="False" />
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>
</StackPanel>

</Window>

后面的代码:
using System.Collections.Generic;

namespace WpfApplication1
{
public partial class Window1
{
public Window1()
{
InitializeComponent();

List<DataItem> data = new List<DataItem>();
data.Add(new DataItem() { Name = "AAA", IsValid = true });
data.Add(new DataItem() { Name = "BBB" });
DataContext = data;
}

public class DataItem
{
public string Name { get; set; }
public bool IsValid { get; set; }
}
}
}

关于WPF - 单元格行中的复选框只读可能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6779028/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com