1

fluent:ToggleButton使用していますが、アイコンを無効にする方法が見つかりません。私が持っていない場所を占めるので、私はそれを使用しません。

それを無効にするデフォルトの方法はありますか、それとも何か特別なことをする必要がありますか?

例

4

1 に答える 1

2

これは私の回避策です:

プロパティ ウィンドウから、テンプレートを新しいリソースに変換し、削除することができます。ContentPresenter x:Name="iconImage"

使用法

<!--Tabs-->
<Fluent:RibbonTabItem Header="Tab">
    <Fluent:RibbonGroupBox Header="Group">
        <Fluent:ToggleButton Height="30" x:Name="buttonGreen" VerticalContentAlignment="Center" 
                       VerticalAlignment="Top" Header="NoIcon" Template="{DynamicResource NoIconToggleButtonControlTemplate}" />

自動生成されたリソース (アイコンの削除後)

<fluent:RibbonWindow.Resources>
    <ControlTemplate x:Key="NoIconToggleButtonControlTemplate" TargetType="{x:Type fluent:ToggleButton}">
        <Border x:Name="border" BorderBrush="{DynamicResource TransparentBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{DynamicResource TransparentBrush}" HorizontalAlignment="Left" Height="Auto" VerticalAlignment="Stretch">
            <Grid Height="Auto">
                <StackPanel x:Name="stackPanel" Orientation="Vertical" Width="Auto">
                    <fluent:TwoLineLabel x:Name="controlLabel" Focusable="False" HorizontalAlignment="Stretch" Margin="2,-3,2,1" Style="{DynamicResource TwoLineLabelStyle}" Text="{TemplateBinding Header}" VerticalAlignment="Stretch"/>
                </StackPanel>
            </Grid>
        </Border>
        <ControlTemplate.Triggers>
            <Trigger Property="Size" Value="Small">
                <Setter Property="Orientation" TargetName="stackPanel" Value="Horizontal"/>
                <Setter Property="Visibility" TargetName="controlLabel" Value="Collapsed"/>
                <Setter Property="HasTwoLines" TargetName="controlLabel" Value="False"/>
                <Setter Property="Margin" TargetName="controlLabel" Value="2,-2,2,2"/>
            </Trigger>
            <Trigger Property="Size" Value="Middle">
                <Setter Property="Orientation" TargetName="stackPanel" Value="Horizontal"/>
                <Setter Property="Width" TargetName="stackPanel" Value="Auto"/>
                <Setter Property="HasTwoLines" TargetName="controlLabel" Value="False"/>
                <Setter Property="Margin" TargetName="controlLabel" Value="2"/>
                <Setter Property="VerticalAlignment" TargetName="border" Value="Stretch"/>
            </Trigger>
            <Trigger Property="IsPressed" Value="True">
                <Setter Property="BorderBrush" TargetName="border" Value="{DynamicResource ButtonPressedOuterBorderBrush}"/>
                <Setter Property="Background" TargetName="border" Value="{DynamicResource ButtonPressedOuterBackgroundBrush}"/>
            </Trigger>
            <Trigger Property="IsChecked" Value="True">
                <Setter Property="BorderBrush" TargetName="border" Value="{DynamicResource ButtonCheckedBrush}"/>
                <Setter Property="Background" TargetName="border" Value="{DynamicResource ButtonCheckedBrush}"/>
            </Trigger>
            <Trigger Property="IsEnabled" Value="False">
                <Setter Property="Opacity" TargetName="controlLabel" Value="0.5"/>
            </Trigger>
            <MultiTrigger>
                <MultiTrigger.Conditions>
                    <Condition Property="IsMouseOver" Value="True"/>
                    <Condition Property="IsPressed" Value="False"/>
                </MultiTrigger.Conditions>
                <Setter Property="Background" TargetName="border" Value="{DynamicResource ButtonHoverOuterBackgroundBrush}"/>
                <Setter Property="BorderBrush" TargetName="border" Value="{DynamicResource ButtonHoverOuterBorderBrush}"/>
            </MultiTrigger>
            <MultiTrigger>
                <MultiTrigger.Conditions>
                    <Condition Property="IsMouseOver" Value="True"/>
                    <Condition Property="IsPressed" Value="False"/>
                    <Condition Property="IsChecked" Value="True"/>
                </MultiTrigger.Conditions>
                <Setter Property="Background" TargetName="border" Value="{DynamicResource ButtonHoverOuterBackgroundBrush}"/>
                <Setter Property="BorderBrush" TargetName="border" Value="{DynamicResource ButtonHoverOuterBorderBrush}"/>
            </MultiTrigger>
        </ControlTemplate.Triggers>
    </ControlTemplate>
</fluent:RibbonWindow.Resources>
于 2016-08-25T08:39:12.467 に答える