WPF,UserControl怎么使用触发器呢? http://social.msdn.microsoft.com/Forums/zh-CN/d2a199ed-4cf3-48d0-9055-9fdc857f500c/datatriggervalue-usercontrol 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <Style x:Key="test"> <Style.Triggers> <Trigger Property="Control.IsMouseOver" Value="True"> <Setter Property="Control.Background" Value="Red"/> </Trigger> </Style.Triggers> </Style> 基本上,我使用 Blend 开发时支持的 TriggerAction,而不手写“触发器”代码。 是这样的。如果你需要设置其它控件的属性,直接指定Name就可以。例如<Trigger Property="IsMouseOver" Value="True"> <!-- 设置鼠标指向时的颜色 --> <Setter TargetName="bd1" Property="Background" Value="#FFC1E9FF" /></Trigger> 我顶楼的代码,并没有Style啊,是一个UserControl 在UserControl中,无法写属性触发器吗? 这是blend自动生成的代码:<UserControl xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/up-compatibility/2006" x:Name="userControl" mc:Ignorable="d" x:Class="WpfApplication1.UserControl1" d:DesignWidth="640" d:DesignHeight="480" Background="Black"> <UserControl.Resources> <Storyboard x:Key="OnMouseEnter1"> <ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(SolidColorBrush.Color)" Storyboard.TargetName="userControl"> <EasingColorKeyFrame KeyTime="0" Value="Red"/> </ColorAnimationUsingKeyFrames> </Storyboard> </UserControl.Resources> <UserControl.Triggers> <EventTrigger RoutedEvent="Mouse.MouseEnter"> <BeginStoryboard Storyboard="{StaticResource OnMouseEnter1}"/> </EventTrigger> </UserControl.Triggers> <Grid x:Name="LayoutRoot"> </Grid></UserControl> 楼主学一下blend会让你轻松许多 .NET学习瓶颈之无头尸(中秋祭) 如何随机生成矩形方块【random()+Thread.Sleep()】? sql2005存储过程问题 后台获取javascript 变量的值 Winform ComBox的问题 救命啊,大侠们帮帮忙!TreeView迭代递归ArrayList集合问题 请问有没有设备状态变更通知的api DataGridView只能绑定DataTable赋值?那DataGridViewComboBoxColumn类型要如何在DataTable中赋值? c#美化控件 一个奇怪的打印问题,有做过打印的人都来看看 打包之后,如何直接双击运行 退出while之后就不执行了
<Style.Triggers>
<Trigger Property="Control.IsMouseOver" Value="True">
<Setter Property="Control.Background" Value="Red"/>
</Trigger>
</Style.Triggers>
</Style>
是这样的。如果你需要设置其它控件的属性,直接指定Name就可以。例如<Trigger Property="IsMouseOver" Value="True">
<!-- 设置鼠标指向时的颜色 -->
<Setter TargetName="bd1" Property="Background" Value="#FFC1E9FF" />
</Trigger>
<UserControl
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/up-compatibility/2006" x:Name="userControl"
mc:Ignorable="d"
x:Class="WpfApplication1.UserControl1"
d:DesignWidth="640" d:DesignHeight="480" Background="Black">
<UserControl.Resources>
<Storyboard x:Key="OnMouseEnter1">
<ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(SolidColorBrush.Color)" Storyboard.TargetName="userControl">
<EasingColorKeyFrame KeyTime="0" Value="Red"/>
</ColorAnimationUsingKeyFrames>
</Storyboard>
</UserControl.Resources>
<UserControl.Triggers>
<EventTrigger RoutedEvent="Mouse.MouseEnter">
<BeginStoryboard Storyboard="{StaticResource OnMouseEnter1}"/>
</EventTrigger>
</UserControl.Triggers>
<Grid x:Name="LayoutRoot">
</Grid>
</UserControl>