Ext.NET是基于跨瀏覽器的ExtJS庫和.NET Framework的一套支持ASP.NET?AJAX的開源Web控件,包含有豐富的Ajax運用,其前身是Coolite。
下載地址:http://www.ext.net/download/
示例地址:http://examples.ext.net/
1.首先下載Ext.Net,地址:http://www.ext.net/download/?,有兩種框架選擇,選擇下載WebForms
當前版本是2.5.1,壓縮包里面包含了不同版本,分別用在相應.net版本的程序中。
?
2.在項目中引用dll文件
要使用Ext.Net,首先創建一個WebForm程序,我們這里使用4.0版。
在引用管理器中,瀏覽到解壓的目錄,然后添加下面的引用(解壓后,在\Ext.NET.WebForms.Pro.2.5.1.Examples.Explorer\Examples Explorer\Ext.Net.Examples\Build\ReferenceAssemblies\文件夾中可以找到):
?
3.配置Web.config
盡管添加了引用,此時還不能算是完工。要想正確的使用Ext.Net,還需要對Web.config進行配置。
第一步,添加httphandler和httpmodule節點的配置
經典模式配置:
<httpHandlers><add path="*/ext.axd" verb="*" type="Ext.Net.ResourceHandler" validate="false" /> </httpHandlers> <httpModules><add name="DirectRequestModule" type="Ext.Net.DirectRequestModule, Ext.Net" /> </httpModules>
集成模式配置:
<modules><add name="DirectRequestModule" preCondition="managedHandler"type="Ext.Net.DirectRequestModule, Ext.Net" /> </modules> <handlers><add name="DirectRequestHandler" verb="*" path="*/ext.axd"preCondition="integratedMode" type="Ext.Net.ResourceHandler" /> </handlers>
要想經典模式和集成模式共存,還需要再system.webServer節點中添加下面的配置:
<validation validateIntegratedModeConfiguration="false" />
第二步,配置頁面控件
要在頁面中使用Ext.Net的控件,需要添加針對Ext.Net控件的配置:
<pages><controls><add tagPrefix="ext" namespace="Ext.Net" assembly="Ext.Net"/></controls> </pages>
?
3.添加Ext.Net全局配置節點
在完成上面兩個步驟之后,我們已經可以在頁面中使用Ext.Net控件了。
?
那么我們為什么還要進行第三步配置呢?第三步配置添加了全局的配置,例如我們要使用全局的皮膚,而不是每一個頁面都去設置。
要添加全局配置,首先要在配置文件中添加自定義節點:
<configSections><section name="extnet" type="Ext.Net.GlobalConfig" requirePermission="false" /> </configSections>
接下來是配置項:
<extnet theme="Neptune" />
在這里我們只設置了全局的皮膚,使用ExtJS 中的Neptune皮膚,效果如下:
不設置這項的話則使用默認皮膚,效果如下:
?
4.在頁面中的簡單用法
在完成了配置之后,我們就可以在頁面中使用Ext.Net控件了。
首先,在需要使用Ext.Net控件的頁面中添加資源引用,就像使用ScriptManager一樣,需要在頁面中添加如下控件:
<ext:ResourceManager runat="server"></ext:ResourceManager>
有了這個控件,就等于我們已經在頁面中添加了ExtJS的引用。
接下來我們來看看上面那個效果示例窗口的代碼:
<ext:Window runat="server" ID="win" Title="示例窗口" Width="300" Height="200" AutoShow="true"> </ext:Window>
然后運行頁面,可以看到我們剛才的示例窗口。
如果你對ExtJS有所了解,那么你會發現,Ext.Net在很大程度上模擬了ExtJS的寫法,大大的提高了我們的生產力
?
PS:關于Ext.Net版權的問題
Ext.Net 是一個開源的項目,有收費授權和免費授權兩種,兩個版本之間基本上沒有什么區別,我們可以在學習的時候使用免費的授權,如果以后需要商業授權,可以去官網買一套,授權版包含了ExtJS的授權,你可以在Ext.Net官網查看相應授權的價格。