使用C#设置XAML按钮控件的样式

时间:2014-09-10 18:04:44

标签: c# asp.net xaml silverlight silverlight-4.0

我有一个XAML按钮控件,如下所示:

<Button x:Name="my-button" Grid.Row="3" Content="See More Foo" Click="my-button_Click" Style="{StaticResource BlueButtonStyle}" Width="75" Height="23" HorizontalAlignment="Right" Margin="10,20,90,0" />

我希望按照以下方式更改C#方法中按钮的样式:

public void ChangeButtonColor()
{
    //Change the style attribute of my-button to RedButtonStyle
}

如何在后面的C#代码中访问XAML控件?

这是在Silverlight 4.0应用程序中。

1 个答案:

答案 0 :(得分:1)

不是一个完整的解决方案,但我找到了一个帮助我的解决方法,所以我想我会分享。更改按钮样式的目的是有效地禁用它。因此,我没有更改样式,而是将XAML控件的IsEnabled属性设置为“false”。

使用C#,我可以通过以下方式直接访问控件来更改IsEnabled属性定义:

public void EnableButton()
{
    my-button.IsEnabled = true;
}

虽然看起来样式可能会受到VisualStateManager的某些配置的影响,但我最终还是不得不走这么远。

感谢@Chris W.的讨论主题并帮助我来到这里!