2017-06-28 2 views
0

Ich lase ListBox Elemente (Elemente hier sind Textbox, Kontrollkästchen, Optionsfelder, wenn Benutzer auf Canvas fallen wir erstellen Steuerelemente dynamisch und zum Canvas hinzufügen) Canvas. Wenn ein Nutzer nun auf ein Element in der Zeichenfläche klickt, möchten Sie Eigenschaften für dieses Steuerelement anzeigen. Wie wird das ausgewählte Steuerelement aus der Zeichenfläche abgerufen?Wie wähle ich ein Objekt in Leinwand wpf

Antwort

0

Um das UI-Element unter Mausklick zu erhalten, können Sie einen Treffertest durchführen. In XAML definieren MouseDown Ereignishandler:

<Canvas Mouse.MouseDown="Canvas_MouseDown"> 

und umzusetzen:

private void Canvas_MouseDown(object sender, MouseButtonEventArgs e) 
{ 
    var canvas = sender as Canvas; 
    if (canvas == null) 
     return; 

    HitTestResult hitTestResult = VisualTreeHelper.HitTest(canvas, e.GetPosition(canvas)); 
    var element = hitTestResult.VisualHit; 

    // do something with element 
} 
Verwandte Themen