[英]I want to pass a selected value in a combobox to a parameter in powershell
我在使用XAML创建的Windows窗体上有一个组合框。 我需要将选定的组合框值传递给脚本中的参数。 我希望代码仅在进行选择时才运行(例如,如果可能的话,例如单击按钮事件)。
我试过在$cboUseCase.
之后使用不同的方法类型$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
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.