Почему мое RibbonWindow не тематически правильно? - PullRequest
9 голосов
/ 28 января 2010

При работе с ленточной библиотекой при запуске приложения строка заголовка выглядит как приложение W98. Как я могу заставить это выглядеть красиво?

Редактировать: Кажется, что-то связано с темой, используемой в Windows.

любая помощь будет оценена.

альтернативный текст http://img718.imageshack.us/img718/8188/321321.jpg

<r:RibbonWindow x:Class="Produccion_Dampers.main"
 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
 xmlns:r="clr-namespace:Microsoft.Windows.Controls.Ribbon;assembly=RibbonControlsLibrary"
 Title="Window1"
 Height="600"
 Width="800">
    <DockPanel>
        <r:Ribbon DockPanel.Dock="Top" Title="my App looks like s***t">
        </r:Ribbon>
    </DockPanel>
</r:RibbonWindow>

Ответы [ 2 ]

2 голосов
/ 29 января 2010

(из моего предыдущего комментария)

Вы можете нарисовать пользовательскую рамку окна, как описано в этой статье MSDN: http://msdn.microsoft.com/en-us/library/bb688195(VS.85).aspx,, которая включает в себя информацию о рисовании заголовка окна со шрифтом системной темы (которая может дать подсказки о доступе к другой информации о теме).

2 голосов
/ 29 января 2010

Если на вашем компьютере запущена настраиваемая тема, по умолчанию в окнах WPF используется тема «Классика».

Как я понимаю, ваши параметры тогда ограничены, потому что строка заголовка не является клиентской для вашего приложения - она ​​отображается ОС (почему тогда она не может принять пользовательскую тему, я не знаю).

  • вы можете использовать p / invoke, чтобы сделать некоторые неприятные вещи
  • Вы можете создать окно без полей и подделать строку заголовка самостоятельно
  • Вы можете увидеть, если (довольно старая) информация здесь что-то хорошо для вас: http://www.browsoft.com/tutorials/DefaultTheme.html

(Если последний работает, это означает, что мое понимание отображения строки заголовка неверно.)

...