1

作为学校项目的一部分,我和一个小组将使用 C# 开发一个 Windows 应用程序。我们在 C# 方面不是很有经验,但对它有一些基本的了解。但是,我们确实有其他语言和平台的经验。

我们想构建一个应用程序,其中布局分为两个主要部分:菜单位于左侧,内容位于右侧。The menu will be more or less static and when an entry in the menu is chosen, the content will be changed.

我们无法找出实现这一目标的最佳方法,也无法找到有关这方面的好材料。这个想法是有一个窗口并向这个窗口添加一个视图(据我所知,这应该是一个 UserControl?)。该控件将是菜单。

现在,我们的问题是是否有人可以为我们指明正确的方向以实现程序中的导航。比如说,当一个菜单项被点击时,我们将如何改变窗口的内容以及我们将如何管理哪个视图是活动的?我想每个视图(在“内容区域”中)都会有一个控制器。我们对使用 WinForms 和 MVC 模式时的“最佳实践”感兴趣。

我们希望有人可以在这个项目中进一步帮助我们。

4

2 回答 2

1

如果我是你,我会认真考虑使用 WPF 而不是 winforms。

它,以及 MVVM 模式的使用,让你可以用比使用 winforms 少得多的代码来完成一些令人印象深刻的事情。如果您还不知道 winforms,那么它的学习曲线也可能稍微不那么陡峭,因为 WPF 是一个经过深思熟虑的框架(至少在我看来)。

如果您使用 WPF 路线,请花一些时间了解绑定的工作原理以及如何将您的 ViewModel 绑定到 UI。一旦你对正确的 UI 分离有了很好的理解,你就可以比使用旧的 WinForms 框架做更多的事情。

当我第一次开始查看 WPF 时,我发现这个链接非常有用。尤其是 RelayCommand。

于 2012-10-17T12:59:32.103 回答
0

如果您使用的是 Winforms,那么您拥有的选项是:

- 动态清除表单并在菜单导航上生成内容

- 使用 mdi 容器表单,它可以是许多子表单的父表单

如果您使用的是 WPF,则可以在基于使用的菜单选择加载的 Frame 控件中使用 Pages。您还可以使用 MVVM 模式来构建您的应用程序。

于 2012-10-16T11:06:07.457 回答