derhoeppi
Goto Top

PowerShell WPF TabControl

Hallo,

in einer GUI (WPF) habe ich ein Ereignis auf einem TabControl. Das Ereignis nennt sich SelectionChanged. Nun habe ich folgendes Problem. Im TabControl befinden sich TabItems, die wiederum diverse WPF Elemente enhalten. In einem ist zum Beispiel eine Combobox. Wenn ich in dieser die Auswahl ändere, greift das SelectionChanged Ereignis des TabControls. Bisher habe ich darauf spekuliert, dass es wirklich nur eine Änderung des TabControls und nicht dessen enhaltenen Elementen gilt. Nun ist meine Frage, wie ich es realisiseren kann, dass das Ereignis SelectionChanged auf dem TabControl nur für das Ändern der TabItems gilt - sprich wenn ich von TabItem1 nach TabItem2 gehe?

Gruß
derhoeppi

Content-ID: 301180

Url: https://administrator.de/forum/powershell-wpf-tabcontrol-301180.html

Ausgedruckt am: 25.12.2024 um 04:12 Uhr

colinardo
colinardo 07.04.2016 aktualisiert um 15:42:58 Uhr
Goto Top
Hallo derhoeppi,
das geht so, du prüfst einfach welchen Typs der Sender/Source des Events ist.
$tabControl.add_SelectionChanged({
    if ($_.Source.getType() -eq [System.Windows.Controls.TabControl]){
       # ===> hier dein Code <====
       # Beispielausgabe des Tab-Headers zu dem gewechselt wurde
       write-host "Changed Tab to $($_.Source.SelectedItem.Header)"  
    }
})
Beachte hierbei das das SelectionChanged-Event auch beim ersten Start einmalig auftritt.

Grüße Uwe