Какой самый простой способ создать индикатор выполнения WPF без пунктирного стиля?

Я хочу создать индикатор выполнения, который не использует стиль по умолчанию WPF, который использует пунктирное отображение. Все, что мне нужно, это простой, гладкий индикатор выполнения. Другими словами, я не хочу, чтобы индикатор выполнения был перечеркнут. Я хочу использовать сплошную полосу.

Как это сделать проще всего?

Я предполагал, что это будет частью API по умолчанию, но пока мне не удалось с ним поиграть. Среди прочего, я попытался установить кисть переднего плана, которая дает мне только цвет, а не стиль нарисованной полосы. Есть ли способ сделать это, при котором я не переопределяю шаблон по умолчанию (я полагаю, что это наиболее простое решение).


person Ken Wootton    schedule 26.01.2009    source источник
comment
Если я правильно помню, это значение по умолчанию для Vista, а в Windows XP - дефис. Вы пробовали приложение WPF в Vista?   -  person OregonGhost    schedule 26.01.2009
comment
Нет, я запускаю и тестирую программу в XP.   -  person Ken Wootton    schedule 26.01.2009


Ответы (2)


Стили по умолчанию для каждой ОС в файлах XAML, которые являются частью платформы. Вы можете использовать этот код ниже, чтобы заставить его использовать стили перспективы во всем приложении даже в XP:

<Window.Resources>  

    <ResourceDictionary Source="/PresentationFramework.Aero, Version=3.0.0.0, Culture=neutral, 
    PublicKeyToken=31bf3856ad364e35, ProcessorArchitecture=MSIL;component/themes/aero.normalcolor.xaml" />

</Window.Resources>   

Однако это изменит внешний вид кнопки и всех других элементов пользовательского интерфейса по умолчанию.

Это основано на коде из здесь

person John    schedule 27.01.2009

Самый простой способ сделать это, который я смог найти, - просто позаимствовать и изменить тему / стиль для нужного мне типа индикатора выполнения. Это очень похоже на предложение Джона, но в моем случае я применяю стиль только для элемента управления индикатором выполнения, а не для всего интерфейса. Проект темы CodePlex WPF - отличный ресурс для такого рода вещей.

person Ken Wootton    schedule 13.03.2009