Windows Forms выглядят по-разному в Powershell и Powershell ISE. Зачем?

Я написал script, который в основном представляет собой небольшой генератор сигнатур wysiwyg для Outlook. Мы хотим, чтобы наши подписи были в корпоративных цветах и ​​были полустандартизированы - отсюда и требование для этого.

Я работал над разработкой в ​​PowerShell ISE, и все выглядело хорошо. Однако, когда я запускаю script, просто используя powershell (как пользователи будут), он выглядит совершенно иначе:

Powershell vs Powershell ISE http://www.freeimagehosting.net/uploads/1d6e6c5c6f.png

Верхняя часть была создана в ISE и выглядит так, как я ее хочу. Нижняя была запущена из powershell напрямую и, кажется, визуально регрессировала пять лет!

Как я могу заставить script выглядеть так же эффектно в Powershell, как в PowerShell ISE?

Спасибо,

Бен

Ответ 1

Добавьте следующую строку в свой script, прежде чем показывать форму:

[System.Windows.Forms.Application]::EnableVisualStyles();