Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

AppBarButtonStyle: Changing Content from code

Tags:

c#

How to change Content of Button which style is AppBarButtonStyle from code-behind? I would like to change an icon and I do it like that:

private void ChangemyButtonIcon()
{
   myButton.SetValue(AutomationProperties.NameProperty, "new text");
   myButton.Content = "&#xE15D;"; // <--- works wrong
}

but then instead of standard icon inside button text displays.

Do you know how to do it in right way? Thank you in advance for help Maciek

like image 282
Maciej Kachniarz Avatar asked Nov 01 '12 14:11

Maciej Kachniarz


1 Answers

U can do like that

<Style x:Key="MusicOffButtonStyle" TargetType="Button" BasedOn="{StaticResource AppBarButtonStyle}">
<Setter Property="AutomationProperties.AutomationId" Value="MusicOffButton"/>
<Setter Property="AutomationProperties.Name" Value="Music OFF"/>
<Setter Property="Content" Value=""/>
</Style>
<Style x:Key="MusicOnButtonStyle" TargetType="Button" BasedOn="{StaticResource AppBarButtonStyle}">
<Setter Property="AutomationProperties.AutomationId" Value="MusicOnButton"/>
<Setter Property="AutomationProperties.Name" Value="Music ON"/>
<Setter Property="Content" Value=""/>
</Style>

private void SetMusicButtonIcon()
{
MusicButton.Style = (ifMuted) ? (this.Resources["MusicOffButtonStyle"] as Style) : (this.Resources["MusicOnButtonStyle"] as Style);

}
like image 194
Karine Daviau Avatar answered Nov 05 '22 03:11

Karine Daviau