【问题标题】:Navigating from one form to another从一种形式导航到另一种形式
【发布时间】:2011-03-09 23:59:24
【问题描述】:

这有点尴尬,但我不确定设计 Windows Mobile Winforms 应用程序的标准方法。我的大部分经验是在 Asp.NET 中。特别是在屏幕之间导航的正常方式是什么?我想一种方法是拥有一个“主”屏幕并打开任何其他表单作为模式对话框。另一种方法是实例化新表单并调用 .Show() 然后在父表单上调用 .Hide() 。我似乎找不到最佳方法的示例。该应用程序将有很多表单,它实际上并没有一个“主”表单。任何可以为我指明正确方向的建议将不胜感激。理想情况下,我想要一个包含大量表单的复杂示例 Windows Mobile C# Winforms 应用程序。所有的例子似乎都只有一两种形式。

干杯 标记

【问题讨论】:

    标签: c# winforms windows-mobile


    【解决方案1】:

    我不确定您是否会找到包含大量表单的任何示例。更多的形式意味着更多的复杂性,而样本本质上会尽量简单。这并不意味着您不能扩展示例中的想法以涵盖复杂的案例。

    对于 UI,我个人喜欢使用 dependency injection and inversion of control container 来保存我的所有类实例,并使用 MVC/MVP 模式将表示与逻辑分开。此时显示不同的形式(即 MVC 中的“V”)实际上取决于您需要如何呈现数据。有时数据作为表单中的选项卡有意义(可能考虑设置对话框),有时模式对话框有意义(尽管不经常),有时Form stack 有意义。通常你会有某种混合使用它们中的一小部分。

    【讨论】:

    • 嗨 ctacke 我想我应该把工资的 10% 寄给你!非常感谢您的进一步帮助。我在这里有点超出我的深度。我检查了你的依赖注入框架。你的文档很清楚,我对它有一些了解,但我认为现阶段对我来说有点太难了。我最初只是在制作一个原型,所以我会用一个“主要”表单来应付,其中包含对任何其他已被实例化的表单的引用。毫无疑问,一旦我了解更多并了解这种方法的局限性,我会回到这个问题。再次感谢。干杯马克
    【解决方案2】:

    应用程序会有很多表格

    不要一次加载整个表单,以免内存过载,这会使您的应用程序和/或手机变慢。

    使用 Mainform(可能是不可见的?)并在此之上显示其他表单。

    【讨论】:

    • 感谢 cevik 的建议。我认为 ctacke 的方法可能是正确的,但在这个阶段对我来说有点太难了,所以我可能会遵循你的建议,直到我了解更多。干杯马克
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-10-06
    • 1970-01-01
    • 2015-06-23
    • 2015-06-06
    相关资源
    最近更新 更多