Wpf 我想将组合框中的选定值传递给powershell中的参数

Wpf 我想将组合框中的选定值传递给powershell中的参数,wpf,powershell,Wpf,Powershell,我在使用XAML创建的Windows窗体上有一个组合框。我需要将选定的组合框值传递给脚本中的参数。如果可能的话,我希望代码仅在进行选择时运行,例如,像按钮单击事件 在$cboUseCase之后,我尝试了使用不同的方法类型。在代码的开头。现在,这段代码试图在加载窗口时运行,我需要它仅在进行选择时运行。谢谢你的帮助 $cboUseCase.({$configSelect = ($cboUseCase.SelectedItem.toString()) &$global:UCM.setConfi

我在使用XAML创建的Windows窗体上有一个组合框。我需要将选定的组合框值传递给脚本中的参数。如果可能的话,我希望代码仅在进行选择时运行,例如,像按钮单击事件

在$cboUseCase之后,我尝试了使用不同的方法类型。在代码的开头。现在,这段代码试图在加载窗口时运行,我需要它仅在进行选择时运行。谢谢你的帮助

$cboUseCase.({$configSelect = ($cboUseCase.SelectedItem.toString())
&$global:UCM.setConfigSelection -selection $configSelect})

我不太明白你的问题。下面是一个可运行的示例,演示如何在组合框中捕获选择更改

也许它可以给你一个跟踪:

[System.Reflection.Assembly]::LoadWithPartialName('PresentationFramework') | Out-Null

[xml]$xaml = @"
<Window 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    x:Name="Window" Title="Initial Window" WindowStartupLocation = "CenterScreen"
    SizeToContent = "WidthAndHeight" ShowInTaskbar = "True" Background = "lightgray"> 
    <StackPanel>
    <ComboBox x:Name="ComboBox1">
        <ComboBoxItem>Item 1</ComboBoxItem>
        <ComboBoxItem>Item 2</ComboBoxItem>
    </ComboBox>
</StackPanel>
</Window>
"@

$reader = (New-Object System.Xml.XmlNodeReader $xaml)
$Window = [Windows.Markup.XamlReader]::Load($reader)

$ComboBox1 = $Window.FindName("ComboBox1")

$ComboBox1.add_SelectionChanged( { 

    param($sender, $args)

    $selected = $sender.SelectedItem.Content
    Write-Host "Selected: $selected"
} )


$Window.Showdialog() | Out-Null