You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MudBlazor框架中MudTreeView组件如何修改复选框的大小和颜色?

MudBlazor TreeView内部复选框样式修改方案

方法1:CSS样式覆盖

MudTreeView内置的复选框有固定类名.mud-treeview-item-checkbox,直接写样式覆盖即可:

/* 仅修改指定TreeView的复选框时,先给MudTreeView添加Class="custom-tree",再加上前缀 */
.custom-tree .mud-treeview-item-checkbox .mud-checkbox-input {
    /* 缩放调整大小,按需修改数值 */
    transform: scale(1.5);
    margin: 0 4px;
}
/* 选中状态颜色 */
.custom-tree .mud-treeview-item-checkbox.mud-checked .mud-icon-root {
    color: #1976d2 !important;
}
/* 未选中状态边框颜色 */
.custom-tree .mud-treeview-item-checkbox:not(.mud-checked) .mud-icon-root {
    color: #90caf9 !important;
}

如果要全局生效,去掉.custom-tree前缀即可。

方法2:自定义Item模板(更灵活,推荐)

直接重写TreeViewItem的内容,自己嵌入MudCheckBox组件,所有原生参数都可以直接生效:

<MudTreeView T="YourItemType" Checkable="true" Items="@YourItemList">
    <ItemTemplate>
        <MudTreeViewItem Value="@context" 
                         Selected="@context.IsChecked"
                         SelectedChanged="e => CheckboxClicked(context.CategoryId, e)">
            <div style="display: flex; align-items: center; gap: 8px;">
                <!-- 这里直接设置Size、Color等MudCheckBox原生参数即可 -->
                <MudCheckBox @bind-Checked="@context.IsChecked" 
                             Size="Size.Large" 
                             Color="Color.Primary"
                             T="bool" />
                <span>@context.CategoryName</span>
            </div>
        </MudTreeViewItem>
    </ItemTemplate>
</MudTreeView>

注意事项

你原代码中Class属性的写法有误,多个类名之间需要用空格分隔,不能用.,修改为Class="mud-treeview-item-content mud-treeview-item-activated"才会生效。


内容的提问来源于stack exchange,提问作者stigmadev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 06:39:04