Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在WPF中使用画布的Style.Triggers_Wpf - Fatal编程技术网

如何在WPF中使用画布的Style.Triggers

如何在WPF中使用画布的Style.Triggers,wpf,Wpf,我想用这段代码为画布制作一个简单的效果,但它不起作用 <Canvas.Style> <Style> <Setter Property="Canvas.Background" Value="Transparent"/> <Style.Triggers> <Trigger Property="Canvas.IsMouseOver" Value="True">

我想用这段代码为画布制作一个简单的效果,但它不起作用

<Canvas.Style>
    <Style>
        <Setter Property="Canvas.Background" Value="Transparent"/>
        <Style.Triggers>
            <Trigger Property="Canvas.IsMouseOver"  Value="True">
                <Setter Property="Canvas.Background" Value="LightSkyBlue">
                </Setter>
            </Trigger>
        </Style.Triggers>
    </Style>
</Canvas.Style>


您的
元素缺少
TargetType
。由于控件可以由多个控件组成,因此可以使用
TargetType
以不同的控件类型为目标,这样还可以为子元素提供上下文智能感知

<Canvas HorizontalAlignment="Left" Height="100" Margin="215,128,0,0" VerticalAlignment="Top" Width="100">
    <Canvas.Style>
        <Style TargetType="Canvas">
            <Setter Property="Background" Value="Transparent"/>
            <Style.Triggers>
                <Trigger Property="IsMouseOver"  Value="True">
                    <Setter Property="Canvas.Background" Value="LightSkyBlue">
                    </Setter>
                </Trigger>
            </Style.Triggers>
        </Style>
    </Canvas.Style>
</Canvas>

我觉得CSS在简化样式方面做得非常好,所以WPF必须如此深奥,这让人很失望