Quantcast
Channel: Windows PowerShell Forum
Viewing all articles
Browse latest Browse all 2314

WPF Anwendung in Powershell; Script innerhalb eines Event-Handlers funktioniert nicht richtig

$
0
0

Hallo,

ich habe mir eine WPF Anwendung erstellt und dies in Powershell eingebunden:

# XML Source for Manage Dynamic Distribution Groups
[xml]$xamlDynamicDistributionGroups = @" <hier ist der XML Code> "@

# Read XML for Dynamic Distribution Group Window
$reader=(New-Object System.Xml.XmlNodeReader $xamlDynamicDistributionGroups)
$WindowDynamicDistributionGroups=[Windows.Markup.XamlReader]::Load($reader)

# Create Variables for Dynamic Distribution Group Window
$xamlDynamicDistributionGroups.SelectNodes("//*[@Name]") | ForEach-Object { Set-Variable -Name "WPF$($_.Name)" -Value $WindowDynamicDistributionGroups.FindName($_.Name) -Scope Script}

Dann habe ich einen Event-Handler (Click) für einen Button zugefügt:

$WPFbuttonPreviewGroup.add_Click({

Write-Host "Previewing group"
$param1 = "`$_." + $WPFComboField1.SelectedValue + " " + $WPFComboBool1.SelectedValue + " " + '"' + $WPFtextValue1.Text + '"'

Write-Host $param1
$MsolUserList = Import-Csv "allMsolUser.csv" -Delimiter ";"
$MsolUserList | ft
$commandstring = '$msolUserList | ?{' + $param1 + '}'

write-host $commandstring
$x = Invoke-Expression $commandstring -Verbose

write-host "Finished"
})

Wenn ich nun das Script ausführe, funktioniert das einlesen der CSV Datei nicht:

$MsolUserList = Import-Csv "allMsolUser.csv" -Delimiter ";"

Das merkwürdige daran ist, dass alle anderen Befehle funktionieren.

write-host $commandstring

Der Befehl liefert mir z.B. folgendes zurück:

$msolUserList | ?{$_.City -eq "Paris"}

Wenn ich den Scriptbereich markiere und mit F8 ausführe, so funktioniert es mit dem gewünschten Ergebnis.


Viewing all articles
Browse latest Browse all 2314


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>