Ich habe ein größeres PowerShell-Skript, das XAML-Code importiert. Hier ist ein Teil des Codes:MenuItem-Klick funktioniert nur, wenn auf untergeordnetes Element geklickt wird
XAML
<Menu x:Name="menu" DockPanel.Dock="Top">
<MenuItem x:Name="menuFile" Header="File">
<MenuItem x:Name="menuFile_History" Header="_History"/>
<MenuItem x:Name="menuFile_Recent" Header="_Recent">
<MenuItem x:Name="menuFile_Recent1"/>
<MenuItem x:Name="menuFile_Recent2"/>
<MenuItem x:Name="menuFile_Recent3"/>
<MenuItem x:Name="menuFile_Recent4"/>
<MenuItem x:Name="menuFile_Recent5"/>
</MenuItem>
<MenuItem x:Name="menuFile_ShowMore" Header="_Show More"/>
<MenuItem x:Name="menuFile_FlushDNS" Header="_Flush DNS"/>
<MenuItem x:Name="menuFile_KillProcess" Header="Kill Process"/>
<Separator/>
<MenuItem x:Name="menuFile_Close" Header="_Close"/>
</MenuItem>
<MenuItem x:Name="menuEdit" Header="Edit">
<MenuItem x:Name="menuEdit_ConvertIP" Header="Convert IP" IsCheckable="True" IsChecked="True"/>
</MenuItem>
<MenuItem x:Name="menuHelp" Header="Help">
<MenuItem x:Name="menuHelp_About" Header="About"/>
</MenuItem>
</Menu>
Powershell
$menuFile.Add_Click({
$txtInput.Text = "It worked!"
})
Das Problem ist, dass der oben Powershell-Code wird nur läuft, wenn eines der untergeordneten Elemente geklickt wird, nicht wenn $ menuFile angeklickt wird. Ich habe geschaut und geschaut und kann nicht verstehen, warum das passiert und wie ich es beheben kann.
Vielen Dank.
Nur um klar zu sein, Sie wollen '$ txtInput.Text =" Es hat funktioniert! "' zu geschehen, sobald das Menü ist initiiert, aber das aktuelle Verhalten ist, dass es passiert, wenn eine der Menüoptionen ausgewählt ist, oder? – TheMadTechnician
Korrekt. Ich benutze den $ txtinput nur als Test, um zu bestätigen, dass es funktioniert. Was ich gerne tun würde, ist update $ txtInput, wenn ich auf den Menüpunkt Datei klicke. Was tatsächlich passiert ist, passiert nichts, wenn ich auf den Menüpunkt Datei klicke, aber wenn ich auf eines der untergeordneten Elemente klicke (wie History oder Close), aktualisiert es $ txtinput. –