<syncfusion:SfButton x:Name="iconButton"
Command="{Binding Source={x:Reference list}, Path=BindingContext.AddFavoritesCommand}"
CommandParameter="{Binding .}" >
<syncfusion:SfButton.FontFamily>
<OnPlatform x:TypeArguments="x:String">
<On Platform="iOS" Value="Segoe MDL2 Assets" />
<On Platform="Android" Value="button_Segoe MDL2 Assets.ttf#Segoe MDL2 Assets" />
</OnPlatform>
</syncfusion:SfButton.FontFamily>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Checked" > i NEED TO ACCESS THIS COLOR
<VisualState.Setters>
<Setter Property="TextColor" Value="Red"/>
</VisualState.Setters>
</VisualState>
<VisualState x:Name="Unchecked">
<VisualState.Setters>
<Setter Property="TextColor" Value="White" /> AND THIS ONE FROM MY COMMAND
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
</syncfusion:SfButton>|
<syncfusion:SfButton
x:Name="iconButton"
IsCheckable="True"
Text="Check"
IsChecked="{Binding IsChecked}"
Command="{Binding AddFavoritesCommand}"
CommandParameter="{x:Reference iconButton}" >
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Checked" >
<VisualState.Setters>
<Setter Property="TextColor" Value="Red"/>
</VisualState.Setters>
</VisualState>
<VisualState x:Name="Unchecked">
<VisualState.Setters>
<Setter Property="TextColor" Value="Green" />
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
</syncfusion:SfButton> |
|
public ViewModel()
{
AddFavoritesCommand = new Command(AddFavorites);
}
private void AddFavorites(object obj)
{
TextColor = (obj as SfButton).TextColor;
if(IsChecked)
{
//execute once checked
}
else
{
//execute once unchecked
}
}
|