类似于 C# 中的应用程序的控制面板

Control Panel like application in C#

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

Control Panel in Windows 7

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

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

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

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

如果您的意思与此类似:

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

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

如果您还不熟悉 DependencyProperties 和绑定,请好好了解它们。它们使用户控件之间的通信变得轻而易举。

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

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