0
我想测试一个组合框是否包含值,如果它不然后执行一些代码。该组合框应始终包含两个值这是在形式的版本号7.xx.xxx.xxx 这里是我到目前为止....Powershell测试组合框中的值
function GetAvailableVersions{
if ((Get-Variable UpdateNewVersionCombo).value.Items.ToString() -notlike 7){
$ProdVersionNumber = (Get-ChildItem '\\172.20.10.18\home$\BuildCopier V7 Prod\Optima.exe').VersionInfo.FileVersion
$GetProd = ($ProdVersionNumber.ToString())
(Get-Variable UpdateNewVersionCombo).Value.Items.Add($GetProd)
$DevVersionNumber = (Get-ChildItem '\\172.20.10.18\home$\BuildCopier V7 Dev\Optima.exe').VersionInfo.FileVersion
$GetDev = ($DevVersionNumber.ToString())
(Get-Variable UpdateNewVersionCombo).Value.Items.Add($GetDev)
}
}
功能GetAvailableVersion被调用时的选择指标另一个组合框被改变。当它第一次被调用时,它将版本号添加到组合框中,但是当第一个组合框的索引被更改时,当前值的测试失败并且版本号再次被添加到组合框,导致版本被复制。 请有人可以阐明如何测试组合框已经包含有7
嗨特雷弗,谢谢你的建议,真的很感激。这将起作用,但意味着每当第一个组合框的选定项目发生变化时,代码将被执行,而我真的在寻找一种解决方案来测试第二个组合框是否包含任何值,并在那里执行代码没有值存在。 – DogManDave
@DogManDave:嗨戴夫,我用一个比较例子更新了答案。 –
太棒了!非常感谢!应该这样做,因为这些值是将文件版本号转换为字符串并始终启动“7.”。我是否正确地假设我可以在“包含”值中使用通配符?即'$ ComboBox.Items.Name -contains'7。?'' – DogManDave