【问题标题】:Control Panel like application in C#控制面板,如 C# 中的应用程序
【发布时间】:2016-04-07 15:56:00
【问题描述】:

我想创建一些看起来像 Window 控制面板的基本应用程序:

Control Panel in Windows 7

  1. 每个额外表单都有带有以下标题的大图标。
  2. 双击图标会打开一些额外的表单。
  3. 您可以使用键盘箭头浏览图标。

问题是是否有一些常见的方法来做到这一点?好吧,我想我可以通过调整应用程序的样式并添加必要的行为来做到这一点,但也许还有其他方法?

此外,我记得有一种方法可以通过编辑具有“.htm”扩展名的文件夹配置文件(如果我没记错的话)在 Windows 95/98 中创建此类内容。我尝试用谷歌搜索该方法,但似乎我使用了错误的关键字...

【问题讨论】:

  • 没有真正的“标准”方式,但 WPF 在布局灵活性方面提供了如此多的功能,这应该是“从零开始”的小菜一碟

标签: c# wpf explorer


【解决方案1】:

如果你的意思与此类似:

您可以将表示“页面”的对象的 ObservableCollection 绑定到 ListBox,您可能希望将其包装在 UserControl 中。我们将其称为 UserControl PageSelector。

如果您想包含地址/搜索栏,则需要创建额外的 UserControl,所有这些都可以包装在另一个 UserControl 中,我们将其称为 ControlPanel。

如果您还不熟悉 DependencyProperties 和绑定,请熟悉它们。它们使 UserControl 之间的通信变得轻而易举。

此外,您可以创建一个名为 PageViewer 的 UserControl,它会处理显示单击的页面。然后,每当单击 PageSelector 中的页面时,您可以隐藏 PageSelector,显示 PageViewer 并将 PageViewer 的 DataContext 设置为单击的页面。注意,PageSelector 中被点击的页面可以被 PageViewer 使用绑定访问。

希望这能带你到某个地方!

【讨论】:

    【解决方案2】:

    使用 Spy++ 我看到控制面板应用程序使用树控件和树视图,但您可能不需要分层视图。另一种可能性是所谓的列表视图(如 Windows 资源管理器的右侧),但我不确定 WPF 中的等价物是什么。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-12
      • 2016-02-11
      相关资源
      最近更新 更多