wpf - 所有 WPF 窗口中的页眉和页脚相同

标签 wpf window

在我的项目中,我对所有窗口都有相同的页眉和页脚(我在这个项目中有超过 20 个 wpf 窗口),只有内容发生了变化。这是 WPF 项目。如果它是一个 asp.net,我在其中使用了母版页。

现在我复制粘贴页眉和页脚所有窗口。如果标题中需要任何小的更改,我必须在所有窗口标题中进行。有什么解决办法吗?

enter image description here

最佳答案

我不是 100% 确定您所说的“所有窗口”是什么意思,但一个好的方法是使用 header和一个 footer用户控件。
您可以随意设置它们,(文本、颜色等),
然后,在你所有的窗口中,你可以有一个包含 3 个元素的网格,stackpanel,dockpanel,无论你想要什么,它都会有 header ,然后是您的 content ,最后,您的 footer .

编辑:
根据评论:而不是拥有这个:

<Window ...>
    <StackPanel>
        <Label>one</Label>
        <Label>two </Label>
        <Label>three</Label>
    </StackPanel>
</Window>
你可以有一个 UserControls(假设叫做 HeaderControl ),然后你需要做的就是
  • 添加命名空间,以便您可以使用它。
  • 像添加任何其他控件一样添加它。
  • 享受可重用性。

  • 步骤说明:
  • 将此与其余的 xmlns.... 一起添加到您的窗口中定义:xmlns:controls="clr-namespace:WpfApplication1"
  • 将第一个控件从标签更改为我们的资源:
    而不是 <Label>one</Label>写:<controls:HeaderControl />

  • example

    关于wpf - 所有 WPF 窗口中的页眉和页脚相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20113405/

    相关文章:

    android - 在非 Activity 类中使​​用窗口?

    wpf - 需要能够退出 Alt 键下划线模式,可能使用 ESC 键

    wpf - 如何通过 generic.xaml 中定义的键访问资源

    wpf - 将 VB.NET 2.0 Winform 迁移到 3.5 WPF

    wpf - WPF-设置对话框窗口相对于主窗口的位置?

    path - keil编译器错误-无法打开源输入文件-但文件存在

    WPF 多列组合框

    带有 + 和 - 的 WPF 扩展器按钮样式

    c# - 我可以在 WPF 中使用 "defeat"SizeToContent 的面板吗?

    javascript - 我应该使用 window.load 还是 document.ready jquery