Вопрос

Я создал небольшое приложение, используя Microsoft .NET.У меня нет проблем с версиями MS .NET, проблема в самой версии 2.0.

Это графическая проблема.Приложение не отображает один и тот же пользовательский интерфейс в двух разных Windows XP.Один выполнен в классическом стиле, а другой - в стиле XP.Также это не показывает то же самое в Vista.

Разница невелика (я имею в виду, что текстовое поле не превращается в кнопку!) но дизайн полностью потерян (меняются цвета и расположение элементов управления). Это означает, что мое приложение выглядит дерьмово на других компьютерах, что НЕ ОЧЕНЬ ХОРОШО, поскольку я потратил много времени на его разработку, хотя им можно пользоваться без проблем.это просто плохо выглядит

Как я могу решить эту проблему?для будущего дизайна приложения?Является ли WPF решением или это еще хуже?

Это было полезно?

Решение

У вас есть несколько вариантов:

  1. Отключите визуальные стили и выглядите как классический пользовательский интерфейс на всех ОС.
  2. Не используйте системные цвета и жестко привязать все цвета к реальным числам.
  3. Используйте стороннюю скиннируемые фреймворки пользовательского интерфейса как разработчик Express http://devexpress.com/Products/NET/Controls/WinForms/Skins/ Black
    (источник: devexpress.com)
  4. Перейдите в WPF - it будет выглядит одинаково (сглаживание может отличаться) на всех ОС, поддерживающих его.

Другие советы

Вы пробовали использовать Application.EnableVisualStyles?Выделили ли вы различия между двумя разными компьютерами XP?Мне не совсем ясно, как выглядит ваше приложение в этих двух случаях - если бы вы могли добавить скриншот к своему вопросу, это бы очень помогло.

Один из вопросов, который вы должны задать себе, заключается в том, действительно ли вы хотите игнорировать настройки пользовательского интерфейса, сделанные вашими пользователями.Если они выберут стиль XP, то действительно ли вам следует проигнорировать его и показать им какой-нибудь другой стиль?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top