多页WPF应用程序

时间:2011-02-24 18:07:59

标签: c# wpf windows

我是桌面应用程序开发的新手,并且有一个非常基本的问题。我有一个名为MainWindow的WPF表单,我应该如何处理多个页面,例如“用户管理”,“管理内容”等。

我认为我有以下选择:

  1. 使用多种形式
  2. 标签
  3. Group Box?
  4. 任何澄清都会很棒!

5 个答案:

答案 0 :(得分:9)

  • 在我最近的应用程序中,我开始使用TabControl,这是一种安全且相当简单的方法。

  • 最近使用带有一系列扩展器的StackPanel切换了tabcontrol。我设计了扩展器,使它们垂直显示标题并水平扩展......有点类似于第一个xbox dashboard。它看起来很棒! =)

  • 另一种选择是使用Page而不是窗口......然后你只需要导航到每个不同的页面。

编辑: Here's多页面应用程序的示例......可能与您的需求接近。

答案 1 :(得分:5)

我选择的解决方案是我正在寻找的是使用WPF Pages,但感谢您的回答。

答案 2 :(得分:4)

有很多方法可以做到这一点,比如创建UserControl并在运行时显示它们。但是使用TabControl是快速而安全的。

只需使用TabControl并将页面放在标签项中。然后通过将值可见性=“折叠”设置为每个TabItem来隐藏TabControl的标题。

结果如下:

enter image description here

enter image description here

enter image description here

如您所见,标题是隐藏的,您可以切换到所需的每个页面。

答案 3 :(得分:2)

创建
usercontrol(wpf):UserManagement
usercontrol2(wpf):ManageContent

放置控件" ContentControl"在主窗口

点击按钮运行代码: //显示usercontrol1
contentControl.content = new UserManagement();

//显示usercontrol2
contentControl.content = new ManageContent();

希望这会对你有所帮助。

答案 4 :(得分:0)

我想举例说明我在其中一个应用程序中的内容。

该应用程序有两个窗口:主窗口和另一个窗口(也来自Window,并配有相应的按钮和事件处理程序),用作启动对话框。在主窗口的构造函数中调用start对话框,如下所示:

public partial class MainWindow : Window
{
    startdlg m_dlg;
    // ...

    public MainWindow() 
    {
        m_dlg = new startdlg();

        if ((bool)m_dlg.ShowDialog())
        {
            // ...
        }
        else
        {
            Close();
        }
        // ...