2010-06-30 51 views
1

這是一個有點尷尬,但我不知道來設計的Windows Mobile WinForms應用程序的標準方式。我的大部分經驗都在Asp.NET中。特別是在屏幕之間導航的正常方式是什麼?我想一種方法是有一個「主」屏幕,並打開任何其他形式作爲模態對話框。另一種方法是實例化新窗體並調用.Show()然後調用父窗體上的.Hide()。我似乎無法找到最佳方法的例子。該應用程序將有很多形式,它並沒有真正的單一「主要」形式。任何意見指出我在正確的方向將不勝感激。理想情況下,我想要一個複雜的示例Windows Mobile C#Winforms應用程序,它有很多形式。所有的例子似乎只有一種或兩種形式。從一種形式導航到另一個

乾杯 馬克

回答

0

我不知道你會找到一大堆形式的任何樣品。更多的形式意味着更多的複雜性,而本質上,樣本試圖變得簡單。這並不意味着您無法將樣本中的想法擴展到複雜的案例。

對於UI,我個人喜歡用dependency injection and inversion of control container來保存我所有的類實例,並使用MVC/MVP模式將表示與邏輯分開。那時顯示不同的形式(這是MVC中的「V」)真的取決於你需要如何呈現數據。有時候,數據是有意義的,如表單標籤(想想設置對話框可能),有時模態對話框意義(雖然不是很常見),有時一個Form stack是有道理的。通常你有一些混合使用它們中的一小部分。

+0

嗨ctacke 我認爲我應該送你10%的工資!非常感謝您的幫助。我在這裏有點超出我的深度。我檢查了你的依賴注入框架。你的文檔非常清晰,我對它有一些瞭解,但我認爲在這個階段對我來說有點太難了。我只是最初製作一個原型,所以我會用一個包含任何其他已經安裝的形式的引用的「主」形式來混淆。毫無疑問,一旦我瞭解更多並瞭解這種方法的侷限性,我會回到這個問題。再次感謝。 乾杯 馬克 – 2010-07-01 00:14:00

1

的應用將有很多的形式

不要加載在同一時間整個表格,以避免超載你的記憶,它可以使你的應用程序和/或手機較慢。

使用的MainForm(也許看不見?),並顯示其他形式在這一個。

+0

我忘了,在使用加載其他形式和卸載它們,當你完成... – 2010-06-30 08:16:24

+0

感謝您的建議cevik。我認爲ctacke的方法可能是正確的,但在這個階段對我來說有點太難了,所以我可能會遵循你的建議,直到我瞭解更多。 乾杯 馬克 – 2010-07-01 00:15:07