如何更改整个画布的鼠标光标形状?

时间:2010-09-11 18:42:52

标签: c# wpf

我有WPF窗口,其中包含几个文本框,按钮和画布,我在其中绘制图形。我希望在画布上有十字光标,因为这样用户可以用更“科学”的方式指出有趣的区域: - )

奇怪的是,当我将光标设置为交叉画布时,它仍然是标准箭头,但是当鼠标悬停在画布上的任何线条或折线上时,它都会交叉。

那么如何设置整个画布的光标(包括“空”空间,什么都没画)?

1 个答案:

答案 0 :(得分:2)

要为整个画布更改鼠标光标形状,请在画布中添加透明背景。

以下是一个示例:

<Canvas Grid.Row="2" Background="Transparent">
   <Polyline Points="25,25 0,50 25,75 50,50 25,25 25,0" 
             Stroke="Blue" StrokeThickness="10"
             Canvas.Left="75" Canvas.Top="50">
      <Polyline.RenderTransform>
          <RotateTransform CenterX="0" CenterY="0" Angle="45" />
      </Polyline.RenderTransform>
   </Polyline>
   <Canvas.Style>
       <Style TargetType="{x:Type Canvas}">
          <Style.Triggers>
              <Trigger Property="IsMouseOver" Value="True" >
                <Setter Property="Cursor" Value="Cross" />
              </Trigger>
          </Style.Triggers>
        </Style>
   </Canvas.Style>
</Canvas>
相关问题