gpt4 book ai didi

wpf - 有没有办法取消 TabControl.Items.CurrentChanging?

转载 作者:行者123 更新时间:2023-12-04 19:20:14 24 4
gpt4 key购买 nike

不幸的是没有 TabControl.SelectionChanging 事件 (Selector.SelectionChanging),我正在努力实现这种行为,所以我可以取消更改请求。

我试图处理 TabControl.Items.CurrentChanging ( Items 属性是和 ItemCollection )事件设置 e.Cancel (在 CurrentChangingEventArgs )为真,但 UI 更新为新选项卡,尽管集合中的项目没有更改。

有什么办法可以防止用户切换到不同的 TabItem当一个条件不满意时?

最佳答案

我不知道发生这种情况的确切原因,这让我非常恼火。

但这是我的解决方法:

在下面的示例中,复选框是“锁定”当前选项卡。因此选中意味着用户无法更改选项卡。

void Items_CurrentChanging(object sender, CurrentChangingEventArgs e)
{
if (checkBox1.IsChecked.Value)
{
var item = ((ICollectionView)sender).CurrentItem;

e.Cancel = true;

tabControl1.SelectedItem = item;
}
}

基本上,发生的情况是(如果我理解正确的话)可视化树会更新,但逻辑树不会。上述方式强制视觉与逻辑树同步。

关于wpf - 有没有办法取消 TabControl.Items.CurrentChanging?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4194290/

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