Я создаю инструмент PowerShell, который выполняет конкретную миграцию программных данных. Один шаг, который мне нужно выполнить, это проверить, может ли SQL-сервер записывать в указанные местоположения файлов. У меня есть кнопка, которая используется для проверки прав доступа к путям. Если у пользователя нет необходимых прав доступа, рядом с путем к файлу помещается небольшая картинка (с предупреждением). Аналогично, если у пользователя есть права доступа, рядом с путем к файлу помещается небольшая графическая коробка (с галочкой успеха).

Предположим, что пользователь исправляет пути к файлам, которые не имеют прав доступа, и он хочет повторно запустить средство проверки прав доступа. Я хочу удалить предыдущие ящики с картинками и обновить форму, чтобы я не отображал изображение предупреждения или изображение успеха до тех пор, пока средство проверки не будет запущено снова.

Моя проблема в том, что после запуска проверки прав доступа ящики с картинками не удаляются и форма не обновляется. Если путь к файлу изменился, и теперь у него есть права доступа, все еще отображается старое изображение (со значком предупреждения), что неверно.

Я понял что-то вроде:

$form.controls.Remove($pictureBox3)

$form.controls.refresh()

удалит картинки, но это не так. Есть что-то, что я пропускаю?

1 ответ1

0

Так как .Controls - это коллекция, которую вы можете назвать $form.Controls.Remove($pictureBox3) как вы говорите.

Но тогда вам нужно $form.Refresh() .

Я обнаружил, что это немного странно, если скрипт все еще обрабатывается, и может не обновляться в течение секунды или около того.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .