将图像设置为标题栏背景
Setting an image as the title bar background
我看不到一个明显的解决方案。我得到了一个图像文件,其中包含 "icon" 和要在标题栏中使用的文本。
理想情况下,我只想关闭图标,使用标题栏部分中的图像,然后就可以了。我有一个 semi-solution:
<Controls:MetroWindow
ShowIconOnTitleBar="False"
WindowTitleBrush="Black"
>
<Controls:MetroWindow.LeftWindowCommands>
<Controls:WindowCommands>
<Image Source="/StaticResources/Masthead.png"></Image>
</Controls:WindowCommands>
</Controls:MetroWindow.LeftWindowCommands>
但效果不是很好。现在有一半的标题栏等没有拖放。有明显更好的解决方案吗?我是不是应该回去只用图标,然后自己写标题?
任何巧妙的想法将不胜感激:)
这里有一个更好的解决方案来满足您的要求。您应该使用 TitleTemplate
而不是 LeftWindowCommands
.
<Controls:MetroWindow.TitleTemplate>
<DataTemplate>
<Image Source="/StaticResources/Masthead.png" HorizontalAlignment="Left" />
</DataTemplate>
</Controls:MetroWindow.TitleTemplate>
希望对您有所帮助。
但是,顺便说一句,为什么不对 Icon
属性 使用简单的 image/icon (png)?并使用 Title
作为 window 标题?
我看不到一个明显的解决方案。我得到了一个图像文件,其中包含 "icon" 和要在标题栏中使用的文本。
理想情况下,我只想关闭图标,使用标题栏部分中的图像,然后就可以了。我有一个 semi-solution:
<Controls:MetroWindow
ShowIconOnTitleBar="False"
WindowTitleBrush="Black"
>
<Controls:MetroWindow.LeftWindowCommands>
<Controls:WindowCommands>
<Image Source="/StaticResources/Masthead.png"></Image>
</Controls:WindowCommands>
</Controls:MetroWindow.LeftWindowCommands>
但效果不是很好。现在有一半的标题栏等没有拖放。有明显更好的解决方案吗?我是不是应该回去只用图标,然后自己写标题?
任何巧妙的想法将不胜感激:)
这里有一个更好的解决方案来满足您的要求。您应该使用 TitleTemplate
而不是 LeftWindowCommands
.
<Controls:MetroWindow.TitleTemplate>
<DataTemplate>
<Image Source="/StaticResources/Masthead.png" HorizontalAlignment="Left" />
</DataTemplate>
</Controls:MetroWindow.TitleTemplate>
希望对您有所帮助。
但是,顺便说一句,为什么不对 Icon
属性 使用简单的 image/icon (png)?并使用 Title
作为 window 标题?