Search code examples
wpfmaterial-design-in-xaml

Can't apply wpf material design icon to button


It is trivial what I am trying to do, but am I am kind of new to WPF and I am missing something.

I have a grid

 <Grid x:Name="statusBarGrid" Background="{Binding}">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="50"/>
            <ColumnDefinition Width="*"/>
            <ColumnDefinition Width="30"/>
        </Grid.ColumnDefinitions>
        <materialDesign:PackIcon x:Name="statusBarIcon" Kind="{Binding}" HorizontalAlignment="Center"  VerticalAlignment="Center" Background="{Binding}"/>
        <TextBlock x:Name="txtBlockMessage" Grid.Column="1" Text="{Binding}" VerticalAlignment="Center"/>
        <Button x:Name="buttonCloseMessage" Content="{materialDesign:PackIcon SmileyHappy}" ToolTip="Icon"  Grid.Column="2"/>
 </Grid>

Based on MaterialDesignInXamlGit this is the way to apply an icon to a button

<Button Name="BtnIcon" Content="{materialDesign:PackIcon SmileyHappy}"
        ToolTip="Icon"/>

So what am I missing? Because my button is blue and has no icon inside it.

enter image description here


Solution

  • It's working fine for me. I believe that some other Style is overriding your Button. Can you try setting your Style locally and try. Like,

    <Button x:Name="buttonCloseMessage" ToolTip="Icon" Grid.Column="2">
        <Button.Style>
            <Style TargetType="Button">
                <Setter Property="Content" Value="{materialDesign:PackIcon SmileyHappy}"/>
            </Style>
        </Button.Style>
    </Button>