Domanda

Ho creato la grafica per il controllo utente come grafica vettoriale e l'ho importata in Expression Design. Finora tutto ha funzionato senza problemi. Tuttavia l'ho quindi esportato come XAML e l'ho aperto in VS. XAML è costituito da una tela e diversi percorsi. Ho creato un controllo utente in XAML, ora voglio un evento clic del mouse, che viene attivato se l'utente fa clic su uno di questi percorsi. Potrei associare lo stesso evento a ogni percorso, ma sarebbe più elegante raggruppare i percorsi, c'è un modo per farlo?

Inoltre mi chiedevo se WPF potesse usare un formato standard per la grafica vettoriale come SVG.

Sotto il codice 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>
È stato utile?

Soluzione

Non ho tempo per verificarlo, ma al di sopra della mia testa, se metti il ??tuo evento sulla tela e non specifichi uno sfondo per esso, dovresti ottenere l'evento click solo quando il l'utente fa clic su uno dei percorsi che contiene.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top