C# 如何在鼠标上方为文本块着色?
我想看看是否有一种方法可以改变鼠标上方silverlight中文本块的颜色。我试过一个触发器,我现在读到它不起作用。如果可能的话,我希望避免在代码隐藏中进行此操作。您不在该事件中使用代码隐藏的本能是一个很好的选择。 不过,请允许我进一步说明:不要更改代码隐藏的视觉效果,而是允许您的ViewModels/code-behind拥有控件的视觉状态 这里的解决方案是将特定的可视更改封装在自定义可视状态中,并从ViewModel或Blend EventTrigger&GoToStateAction调用该可视状态 要了解有关VisualStateManager的更多信息,我强烈建议您观看Steve White@C# 如何在鼠标上方为文本块着色?,c#,silverlight,silverlight-4.0,C#,Silverlight,Silverlight 4.0,我想看看是否有一种方法可以改变鼠标上方silverlight中文本块的颜色。我试过一个触发器,我现在读到它不起作用。如果可能的话,我希望避免在代码隐藏中进行此操作。您不在该事件中使用代码隐藏的本能是一个很好的选择。 不过,请允许我进一步说明:不要更改代码隐藏的视觉效果,而是允许您的ViewModels/code-behind拥有控件的视觉状态 这里的解决方案是将特定的可视更改封装在自定义可视状态中,并从ViewModel或Blend EventTrigger&GoToStateAction调用该
要了解有关GoToStateTebehavior的更多信息,请参见@,您可以设置样式触发器:
<TextBlock Text="Blah">
<TextBlock.Style>
<Style TargetType="{x:Type TextBlock}">
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="Green" />
<Setter Property="Foreground" Value="Black" />
</Trigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
Legend,我今晚会看看这些!