Я пытался создать адаптивный графический интерфейс для моих личных скриптов Powershell. У меня возникла проблема, которая широко обсуждается в Интернете: Замораживание GUI (поскольку Powershell является однопоточным).
Похоже на эту проблему , но мой случай относится к Powershell. Я успешно реализовал решение на основе Powershell для создания графических интерфейсов, основанных на форме XAML. Теперь давайте рассмотрим этот код:
#EVENT Handler
$Somebutton.add_Click({
$SomeLabel.Content = "Calculating..."
Start-Job -ScriptBlock {
#Computation that takes time
#...
$SomeLabel.Content = "Calculated value"
}
})
#Show XAML GUI
$xamlGUI.ShowDialog() | out-null
xamlGUI
- это сама форма, а $Somebutton
/ $SomeLabel
- это элементы управления, которые я смог прочитать из xaml и преобразовать в переменные Powershell.
Я пытаюсь понять, почему задание, которое я запускаю, не обновляет мою метку, когда вычисления выполнены. Это на самом деле ничего не делает.
Я новичок в работе Powershell, и мне интересно, есть ли что-то, что я пропускаю.