WPF TabControl 设置item不能点击

xml 复制代码
<hc:TabControl
    Name="TabControl"
    Grid.Row="0"
    Background="{StaticResource TitleBackground}"
    BorderBrush="#111"
    BorderThickness="0"
    IsScrollable="True"
    ItemsSource="{Binding PageInfoList}"
    SelectedIndex="{Binding ChannelIndex}"
    ShowContextMenu="False"
    TabItemWidth="100">
    <hc:TabControl.ItemTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding Header}" />
        </DataTemplate>
    </hc:TabControl.ItemTemplate>
    <hc:TabControl.ContentTemplate>
        <DataTemplate>
            <ContentPresenter Content="{Binding Content, Mode=OneTime}" />
        </DataTemplate>
    </hc:TabControl.ContentTemplate>
    <!--  在此位置绑定IsEnabled属性  -->
    <hc:TabControl.ItemContainerStyle>
        <Style TargetType="hc:TabItem">
            <Style.Triggers>
                <DataTrigger Binding="{Binding IsTabEnabled}" Value="False">
                    <Setter Property="IsEnabled" Value="False" />
                </DataTrigger>
            </Style.Triggers>
        </Style>
    </hc:TabControl.ItemContainerStyle>
</hc:TabControl>
csharp 复制代码
  public partial class PageInfo : ObservableObject
  {
      [ObservableProperty]
      public string header;

      [ObservableProperty]
      public bool isTabEnabled;

      [ObservableProperty]
      public FrameworkElement content;
  }
相关推荐
Aevget16 小时前
DevExpress WPF中文教程:Data Grid - 如何绑定到有限制的自定义服务(四)?
wpf·界面控件·devexpress·ui开发·.net 10
棉晗榜20 小时前
wpf DataGrid控制列是否显示,DataGrid列不会触发Visibility的转换器
wpf
超级种码20 小时前
Redis:Redis高可用——副本、哨兵和集群
数据库·redis·wpf
棉晗榜20 小时前
wpf给Border添加闪烁边框
wpf
Derrick_itRose20 小时前
DevExpress笔记WPF(2)Data Editors and Controls(基础编辑器)
笔记·编辑器·wpf
He BianGu21 小时前
【笔记】WPF的Binding中AsyncState的使用方式
笔记·wpf
曹天骄2 天前
Cloudflare KV 使用教程(基于 Wrangler 项目)
wpf
摘星编程2 天前
Flutter for OpenHarmony 实战:Dialog 对话框详解
flutter·wpf
ou.cs2 天前
WPF TreeView 自动展开所有节点:附加行为(Attached Behavior)保姆级实现教程
c#·.net·wpf
一念春风2 天前
可视化视频编辑(WPF C#)
开发语言·c#·wpf