GitHub:https://github.com/iccb1013/Sheng.Winform.IDE
在上一篇文章中,簡要的介紹了 Sheng.Winform.IDE 的基本功能和要實現的目標:
Github 開源:使用 .NET WinForm 開發所見即所得的 IDE 開發環境(Sheng.Winform.IDE)【1.基本介紹】
http://www.cnblogs.com/sheng_chao/p/4387249.html
在這一篇文章中,我將對源代碼進行簡要的說明。
從 GitHub 上克隆版庫之后,進入 SourceCode 目錄,你將看到類似如下的目錄結構:
Project 目錄:
解決方案文件,通過 SailingEase.sln 打開整個工程。
Source 目錄:
工程目錄,解決方案所包含的所有的工程在此目錄下。
ThirdPartyLib 目錄:
引用的第三方庫。
.ssr 結尾的文件:
SailingEase .NET Resources Tool 的工程文件,用於處理多語言開發中的資源文件。
在此下載最新版本:http://ssr.shengxunwei.com/
打開解決方案后,工程結構如下:
Components 目錄:
業務相關的功能模塊:數據實體管理、數據字典管理、導航管理、資源管理、窗體和窗體設計器。
DataBaseProvide 目錄:
數據庫訪問存適配器。
Modules 目錄:
基本功能模塊:數據源管理、啟動器、選項、工程管理、啟始頁。
其它的工程基本功能如下:
ComponentModel 和 ComponentModel.Design :
用於窗體設計器,為窗體設計器提供部分基礎功能。
Controls 和 Controls.Extensions
控件庫。
Core 和 Core.Development
業務功能的核心實現。
Data:
數據訪問相關。
Drawing:
繪圖相關。
Infrastructure:
基礎結構。
Kernal:
部分基礎功能的實現。
Net:
網絡相關,TCP Client/Server 的實現。
RegexTool:
正則表達式工具和工具類。
RuntimeContract:
運行時協定。
Shell:
應用程序宿主。
Win32:
部分 Win32 API 的封裝。
Windows.Forms.Development:
用於窗體設計器,為窗體設計器提供部分基礎功能。
目前的源代碼,實現的是 IDE 部分,啟動 IDE 新建項目之后,所有的設計和數據,都會被保存在一個 zip 文件中,作為 Sheng.Winform.IDE 的工程文件。
工程文件中,使用 XML 存儲數據,你可以使用任何其它技術方案或平台,解析這些 XML ,來實現自己的運行時(解析器)。
你可以直接解壓縮項目文件,得到包中的內容:
拿窗體的定義來說,你可以看到如下定義:
你可以在本項目的基礎上之上,定制你自己的業務,實現你自己的運行時平台。
希望本項目對你有用,Enjoy。
原文:http://blog.shengxunwei.com/Home/Post/6a8f5c78-b492-4d49-9230-2a20147aae6f