Pergunta

Trabalhando com a RibbonControlSlibrary, quando executo meu aplicativo, a barra de título parece o aplicativo W98. Como posso fazer com que pareça bonito?

Editar: Parece que tem algo a ver com o tema usado no Windows.

Qualquer ajuda seria apreciada.

TEXTO DE ALT 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>
Foi útil?

Solução

(do meu comentário anterior)

Você pode desenhar um quadro de janela personalizado, conforme descrito neste artigo do MSDN: http://msdn.microsoft.com/en-us/library/bb688195(vs.85).aspx, que inclui informações sobre como desenhar a legenda da janela com a fonte do tema do sistema (que pode fornecer pistas sobre o acesso a outras informações do tema).

Outras dicas

Se você estiver executando um tema personalizado em sua máquina, o WPF Windows padrão para o tema "clássico".

Pelo que entendi, suas opções são limitadas porque a barra de título não é do seu aplicativo-ela é renderizada pelo sistema operacional (por que não pode adotar o tema personalizado, eu não sei).

  • Você pode usar P/Invoke para fazer algumas coisas desagradáveis
  • Você pode criar uma janela sem fronteiras e fingir a barra de título
  • Você pode ver se as informações (bastante antigas) aqui fazem algo de bom para você: http://www.browsoft.com/tutorials/defaulttheme.html

(Se o último funcionar, significa que meu entendimento sobre a renderização da barra de título está incorreto.)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top