У меня есть GUI со списком и текстовым полем. Мне нужно обновить вывод текстового поля рассмотреть, чтобы комбобокс выбранный файл.
Я пробовал это. Но вывод в текстовое поле не является правильным. Любой может помочь, пожалуйста. СПАСИБО
$Disk = New-Object system.Windows.Forms.ComboBox
$Disk.AutoSize = $true
$Disk.DropDownStyle = "DropDownList"
$Disk.Items.AddRange((get-partition|?{$_.DriveLetter}|select DiskNumber ))
$SelectedFile= {
$DiskSelected = $Disk.SelectedItem
Write-Host "Disk Selected: $DiskSelected"
$DiskNum = $DiskSelected -split "@{DiskNumber="
$DiskNumber = $DiskNum -split "}"
Write-Host "Disk Number: $DiskNumber"
$TextBox1.AppendText((Get-Disk -Number $DiskNumber))
}
$Disk.add_SelectedIndexChanged($SelectedFile)
$Disk.DisplayMember = 'Name'
$TextBox1 = New-Object system.Windows.Forms.TextBox
$TextBox1.multiline = $true
$TextBox1.BackColor = "#F5F5F5"
Вывод в текстовом поле выглядит следующим образом
MSFT_Disk (ObjectId = "{1}\\SSXX\root/Microsoft/Windows/Stor...) MSFT_Disk (ObjectId = "{1}\\SSXX\root/Microsoft/Windows/Stor...)
Обновлено
Теперь я могу перенести информацию о диске в текстовое поле, но могу в текстовом поле не обновляется, если я выбираю другой элемент в выпадающем списке.
$Disk = New-Object system.Windows.Forms.ComboBox
$Disk.AutoSize = $true
$Disk.DropDownStyle = "DropDownList"
$Disk.Items.AddRange((get-partition|?{$_.DriveLetter}| select DiskNumber ))
$SelectedFile = {
$DiskSelected = $Disk.SelectedItem
Write-Host "Disk Selected: $DiskSelected"
$DiskNum = $DiskSelected -split "@{DiskNumber="
$DiskNumber = $DiskNum -split "}"
Write-Host "Disk Number:$DiskNumber"
Get-Disk | Where-Object -FilterScript {$_.Number -Eq "$DiskNumber"} | Select FriendlyName, BusType, Size | Export-Csv 'Temp.csv' -NoType
$TextBox1.AppendText((Get-Content -Path ".\Temp.csv"))
}
$Disk.add_SelectedIndexChanged($SelectedFile)
$Disk.DisplayMember = 'Name'
$TextBox1 = New-Object system.Windows.Forms.TextBox
$TextBox1.multiline = $true
$TextBox1.WordWrap = $true
$TextBox1.BackColor = "#F5F5F5"
$textsize = ($width / 130)
$FontText = New-Object System.Drawing.Font("Calibri",$textsize,[System.Drawing.FontStyle]::Regular,[System.Drawing.GraphicsUnit]::Pixel)
$TextBox1.Font = $FontText