0

我已将用户控件的图形创建为矢量图形并将其导入到 Expression Design。到目前为止,一切正常,没有问题。但是我随后将其导出为 XAML 并在 VS 中打开它。XAML 由一个画布和几个路径组成。我在 XAML 中创建了一个用户控件,现在我想要一个鼠标单击事件,如果用户单击这些路径中的任何一个,就会触发该事件。我可以将相同的事件附加到每条路径,但是将路径分组会更优雅,有没有办法做到这一点?

我还问自己 WPF 是否可以使用标准格式的矢量图形,如 SVG。

在 XML 代码下方。

    <Canvas x:Name="Arrow" Width="40" Height="400" Canvas.Left="0" Canvas.Top="0">
    <Path Width="11.432" Height="361.1" Canvas.Left="12.861" Canvas.Top="-2.666" StrokeThickness="12" StrokeLineJoin="Round" Stroke="#FFFF2800" Data="F1 M 310,130.967L 310,480.067"/>
    <Path Width="6.75" Height="355.767" Canvas.Left="15.25" Canvas.Top="0" Stretch="Fill" StrokeThickness="6.66667" StrokeLineJoin="Round" Stroke="#FFFFFFFF" Data="F1 M 310,130.967L 310,480.067"/>
    <Path Width="22.725" Height="30.4" Canvas.Left="6.363" Canvas.Top="351.1" Stretch="Fill" StrokeThickness="2.66667" StrokeMiterLimit="2.75" Stroke="#FFFF2800" Fill="#FFFF2800" Data="F1 M 310,507.8L 320.4,480.067L 299.6,480.067"/>
    <Path Width="29.97" Height="2.667" Canvas.Left="4.107" Canvas.Top="2" Stretch="Fill" StrokeThickness="2.66667" StrokeMiterLimit="2.75" Stroke="#FFFF2800" Data="F1 M 296.133,130.967L 323.867,130.967"/>
    </Canvas>
4

1 回答 1

3

我没有时间来验证这一点,但在我的脑海中,如果你把你的事件放在画布上,并且没有为它指定背景,那么你应该只在用户点击时获得点击事件它包含的任何路径。

于 2009-03-09T15:59:37.130 回答