是否有針對Silverlight和WPF的經驗?

是否可使用相同的源代碼針對Silverlight和WPF進行開發? 可能在必要的地方使用一些#define塊。 windows


#1樓

Flashcards.Show應用程序是這種WPF / SL / WP7代碼共享和跨平臺可能性的一個很好的例子。 http://windowsteamblog.com/windows_phone/b/wpdev/archive/2011/03/03/flashcards-show-planning-a-cross-platform-solution.aspx 後端

跨平臺的概念很是簡單,由於全部內容均可以在.NET和相似的XAML綁定系統上運行。 個人建議是在MVVM和其餘抽象方法上花更多時間在應用程序的體系結構上,以隔離平臺依賴性。 所以,大部分代碼能夠重複使用,而某些XAML可能須要重寫,這取決於應用程序在不一樣平臺上的視覺複雜性。 spa


#2樓

從理論上講,它應該是可行的。 對於代碼來講,這不是一個大問題。 可是,您必須很是當心XAML,而且只能使用WPF和SL的相交子集(1),由於XAML沒有#if/#endifcode

(1)與一般的見解相反,SL不是WPF的適當子集。 它具備WPF不具有的某些功能 ,儘管這些功能正在開發中。 orm


#3樓

順便說一句,PRISM(模式和實踐的組合應用程序塊)如今支持Silverlight,而且有一個C9視頻,其中包含在WPF和Silverlight中使用代碼的快速示例。 視頻

我認爲,若是您堅持使用MV-V-VM(或相似方式),那麼您的許多後端代碼將能夠重用,可是若是您想充分享受「豐富」的經驗,則可能須要分叉XAML自己,除非您願意將VSM beta版用於WPF。 blog


#4樓

我沒有這方面的經驗,可是我使用了一個組件,該組件使用相同的代碼同時針對WPF和Silverlight環境(只有不多的區別)。 開發

該組件是Visifire的 Chart,它是開源的 get

也許你能夠看看 flash


#5樓

您可使用Visual Studio文件連接在Silverlight中包含WPF項目中的類-但前提是它們不執行任何基於UI或XAML的工做(由於這一般會在這二者之間發現不一致之處)...

所以,請遵循業務邏輯等。

相關文章
相關標籤/搜索