亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Ext.NET-基礎篇

2019-11-17 02:05:48
字體:
來源:轉載
供稿:網友

Ext.NET-基礎篇

概述

本文介紹Ext.NET的基本概念,安裝配置、布局以及容器,最后介紹了DirectEvents、DirectMethod、Listener,并提供了示例代碼。

示例代碼下載地址>>>>>

Ext.NET 簡介

Ext.NET 是基于跨瀏覽器的 Sencha ExtJS 庫和.NET Framework的一套支持asp.net Ajax的非開源Web控件,包含有豐富的Ajax運用,其前身是Coolite 。

Ext.NET使用一種自己的翻譯機制,將ASPX頁面中的EXT.NET標記代碼翻譯成EXTJS,瀏覽器中執行的還是EXTJS代碼,類似于 Sencha GXT ,至于EXTJS的由來不清楚的話可以問度娘。

EXT.NET也對EXTJS做了一些自己的擴展。EXT.NET在2.3之前是開源的;在1.0之前叫做Coolite。

最新的EXT.NET 3.1

Ext.NET 最新版本是3.1,基于 EXTJS 5.1.0,與 EXT.NET 2.X 的主要區別是多了對平板設備的支持,當然,這主要是由于 Ext.NET 2.X 系列是基于 EXTJS 4.X,自從EXTJS 5.0 才有對平板設備的支持。

如下是EXT.NET官方下載頁面給出的說明:

?Ext.NET 3.1Ext.NET 2.5.3
Ext Js 版本Ext JS 5.1.0Ext JS 4.2.1
發布時間2015-02-172014-11-05
.NET Framework要求.NET 4.0, 4.5 & 4.5.1.NET 3.5, 4.0 , 4.5 & 4.5.1
CPU32 & 64 bit32 & 64 bit
Visual Studio2010, 2012 & 20132008, 2010, 2012 & 2013
桌面瀏覽器支持Chrome,Firefox,IE8+,Safari 6+,Opera 12+Chrome,Firefox,IE6+,Safari 6+,Opera 12+
平板瀏覽器支持Safari iOS6+,Chrome Android 4.1+,IE10+ Win8不支持
?2015年2季度或3季度發布Ext.NET 3.2.0不再發布新版本

為什么使用Ext.NET

上面提到,Ext.NET是對ExtJS的.NET封裝,那么為么不直接用ExtJS呢?

  1. 一整套專業的前端框架,兼容各種主流瀏覽器(甚至IE6),很少需要引入第三方庫,降低了學習成本;
  2. 減少了javascript的代碼量,易于維護,同時又不失ExtJs的靈活性;
  3. 提供的DirectEvents和DirectMethod,使調用服務器端方法更為簡單;
  4. 使ASP.NET開發人員更容易理解和使用ExtJS;

總之,減少了工作量,降低了學習成本;不過在實際的使用中,還是需要寫一些簡單的Javascript代碼。

關于ExtJS這里不多介紹,其提供的多種主題樣式,尤其適用于企業應用開發,很少需要美工的介入,這一點對于小型團隊來說,尤其缺少專業美工的情況下,頗為實用。關于請參見Sencha官方博客,其中有Extjs與AngularJS的比較。

ExtJS vs AngularJS

開發環境配置

官方的Readme以及Visual Studio配置說明已經說的很清楚了,兩種方法: 自動配置 和 手動配置。

至于添加到VS工具箱拖拽控件至頁面,基本沒用,還是省省時間吧,Ext.NET基本沒有對設計時可視化支持的,這也是入門較難的原因之一。

自動配置(推薦)

使用NuGet,新手推薦使用這種方式,因為——簡單。方法如下:

  1. 打開Visual Studio,菜單欄 工具 > 擴展和更新,安裝 NuGet程序包管理器,通常,VS2013已經自動安裝了,若沒有,左側點 聯機,右上方搜索框中輸入 NuGet ,具體安裝過程 參見此處,安裝完成會需要重啟VS。若是搜不出來,改DNS/FQ/VPN/改Host文件等問度娘。
  2. VS中新建空Web項目,解決方案資源管理器中項目名稱上 右鍵 > 管理NuGet程序包 ,左側點 聯機,右上方搜索框中輸入 ext.net,安裝之。管理NuGet程序包NuGet安裝EXT.NET耐心等待,Ext.NET的DLL也要好幾十M的,經過無聊的等待后,開發環境自動配置好了,來看看NuGet都自動做了些什么:

    • 自動下載了相關DLL文件,請打開項目所在物理路徑看看;
    • 根據當前Web項目.NET Framework版本自動添加了Ext.NET的DLL對應.NET版本,包括Ext.NET本身的依賴DLL;
    • 自動配置好了項目的Web.Config文件。

我們手動要做的無非就這幾個事情。下圖是Ext.NET3.1.0的依賴關系:Ext.NET3.1.0依賴項

也就意味著手動配置的話需要為項目添加這些依賴項的引用。自動添加的 APP_Readme 目錄和 Ext.Net.Default.aspx (測試頁面)可以刪除。

手動配置

  1. 下載DLL文件;
  2. 項目中添加對DLL的引用;
  3. 配置 Web.Config 文件。

至于如何手動配置,請參見前面提到的Readme以及Visual Studio配置說明。

WEB.CONFIG中<extnet />配置說明

默認的配置如下

<extnet theme="Crisp"            licenseKey="** Ext.NET LICENSE KEY HERE **"            initScriptMode="Linked" />

Readme文件中有詳盡的<extnet/>屬性配置說明,下面列出幾個比較常用的:

  • ajaxTimeout : 設置默認的AJAX請求超時時間默認為30000(30秒),單位毫秒.
  • glyphFontFamily : 為支持Glyph的組件設置字體名稱如:FontAwesome,需要頁面引入相關的字體CSS文件,默認為空.
  • licenseKey : Ext.NET License key
  • scriptMode: 指定javascript代碼呈現方式。默認值: "Release". 可選項有 Release、DebugDevelopment
  • Release (壓縮過的)
  • Debug(不壓縮)
  • Development(非壓縮且帶debug信息) 經驗證,此項不可用

    • sourceFormatting : 是否格式化EXT.NET生成的javascript代碼默認值為 is 'false'. 可選項有 [true|false]
    • theme : 默認主題樣式默認值為"Default" (經典的藍色主題). 可選項有 Defaultaccess、Gray、NeptuneNeptune Touch、Crisp、Crisp Touch

開始之前

模板窗體

新建WebForm頁面,默認body中的內容刪除掉。

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ExtNetTemplate.aspx.cs" Inherits="WebFormDemo.ExtNetTemplate" %><!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>    <title>ExtNetTemplate</title></head><body>    <ext:ResourceManager runat="server" /></body></html>

若是<body>中輸入 <ext 沒有自動代碼提示的話,重新加載Web項目或重新打開解決方案即可。

<ext:ResourceManager runat="server" />必須在<body></body>中第一行,因為它負責為頁面添加js和各種css文件的引用。

為javascript代碼添加EXTJS代碼提示

Web項目開發,無法避免編寫javascript腳本,VS提供的Intellisense方便快捷,如何添加javascriptEXTJS的代碼提示支持?在Web項目的Scripts目錄中(若沒有新建)添加_references.js文件,并輸入如下代碼;

/// <autosync enabled="true" />/// <reference name="Ext.Net.Build.Ext.Net.extjs.ext-all-debug.js" assembly="Ext.Net" />/// <reference name="Ext.Net.Build.Ext.Net.extnet.extnet-all-debug.js" assembly="Ext.Net" />

這樣項目中的js文件中,就有了代碼提示。支持的就不夠全不夠好?因為Sencha官方現在好像只提供對Sublime Text的支持,有好的方法別忘了告訴我,謝謝。使用時可查看 ExtJs官方API文檔。

CSS說明

Ext.NET/EXTJS都是用的CSS來控制樣式的,若想自定義,自己加一個css樣式表文件引用至實際的ASPX頁面中就可以。針對中文覆蓋默認字體的CSS定義,新建ExtjsExtra.css文件,內容如下:

/*#region Extjs樣式擴展*/* {     font-family: 'Helvetica', 'Tahoma', 'Arial', "Microsoft YaHei", "微軟雅黑",'STXihei', "華文細黑", 'SimSun', "宋體", 'Heiti', "黑體", 'sans-serif' !important;}/*#endregion */

在ASPX文件的<head></head>中添加對此CSS文件的引用即可。

<link rel="stylesheet" type="text/css" href="/Content/ExtjsExtra.css" />

布局(Layout)

前面說過,EXT.NET基本沒有對設計時可視化支持的,這也是新手常常遇到的問題,在 官方示例 中,已經有詳盡的示例代碼,認真閱讀官方示例,常見的布局問題都可以應付。

EXTJS有Sencha Architect提供了設計時的支持,不過生成的是純js代碼。

EXT.NET官方示例Layout節點中有各種布局的詳細代碼例子,如下EXT.NET Layout

大致說明下:

  • AbsoluteLayout: 絕對,指定控件的X和Y值(像素);
  • AccordionLayout: 折疊式布局,常用于頁面菜單之類;
  • AnchorLayout: 配置高度和寬度,值可以是百分比(1-100%)或偏移量(正/負整數),詳細說明參見 Anchor Layout的源碼;
  • BorderLayout: 以邊框方式劃分區域,通常用于整個頁面(容器內部也可以用)的布局,如官方示例的首頁就是這種布局;
  • CardLayout: 卡片式布局,常用于需要上一步&下一步的向導頁。
  • CenterLayout: 始終居中,這個是3.x新加的功能,比較有用。
  • ColumnLayout: 列式布局,用ColumnWidth指定所占寬度比例(0到1之間的小
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产一区二区三区中文| 亚洲人午夜精品| 久久夜精品va视频免费观看| 亚洲欧美日韩爽爽影院| 国产v综合ⅴ日韩v欧美大片| 日韩在线免费高清视频| 亚洲码在线观看| 欧美亚洲另类激情另类| 黑人狂躁日本妞一区二区三区| 久久在线观看视频| 成人精品福利视频| 国模精品一区二区三区色天香| 国产精品美腿一区在线看| 亚洲黄页网在线观看| 成人av资源在线播放| 高清亚洲成在人网站天堂| 国产免费一区二区三区在线观看| 亚洲另类xxxx| 亚洲国产精品久久久久秋霞不卡| 亚洲成人黄色在线| 久久久久久久久久久av| 亚洲第一视频在线观看| 亚洲午夜激情免费视频| 亚洲成av人乱码色午夜| 亚洲高清一区二| 91精品国产91久久| 国产日本欧美一区二区三区在线| 欧美极品在线视频| 国产精品久久久久久久久久久新郎| 萌白酱国产一区二区| 国产综合在线看| 欧美精品在线免费| www.日韩不卡电影av| 成人精品在线观看| 九九热在线精品视频| 亚洲美女在线观看| 国产成人精品a视频一区www| 在线观看亚洲区| 久久久久久久电影一区| 欧美老女人xx| 国产一区二区香蕉| 亚洲成成品网站| 久久99国产综合精品女同| 欧美电影免费观看| 日产日韩在线亚洲欧美| 亚洲第一精品夜夜躁人人爽| 日韩av在线天堂网| 日韩精品免费观看| 欧美寡妇偷汉性猛交| 日韩美女激情视频| 亚洲在线视频福利| 秋霞av国产精品一区| 精品欧美aⅴ在线网站| 精品国偷自产在线视频99| 狠狠躁夜夜躁人人爽超碰91| 91高潮精品免费porn| 精品动漫一区二区| 亚洲自拍中文字幕| 久久精品国产亚洲一区二区| 久久久久女教师免费一区| 26uuu国产精品视频| 国产欧美在线播放| 国产精品永久在线| 美日韩在线视频| 国产精品久久久久久久久| 午夜精品福利视频| 国产丝袜一区视频在线观看| 日韩va亚洲va欧洲va国产| 国产精品久久一区主播| 影音先锋欧美精品| 91成人在线视频| 亚洲高清一区二| 成人av电影天堂| 亚洲国产成人av在线| 亚洲国产成人精品久久久国产成人一区| 日韩国产欧美精品一区二区三区| 亚洲国产精品免费| 国产成人精品免高潮费视频| 国产视频观看一区| 亚洲a在线观看| 欧美人与性动交a欧美精品| 91在线免费看网站| 成人久久久久久久| 91精品免费久久久久久久久| 色青青草原桃花久久综合| 精品久久久久久国产| 久久精品这里热有精品| 欧美日韩久久久久| 欧美激情第99页| 欧美日韩国产二区| 国产大片精品免费永久看nba| 欧美大尺度在线观看| 亚洲第一级黄色片| 欧美精品日韩三级| 性视频1819p久久| 中日韩美女免费视频网站在线观看| 国产拍精品一二三| 欧美亚洲激情在线| 91免费在线视频| 亚洲成人黄色网址| 日本精品va在线观看| 日韩欧美亚洲国产一区| 亚洲视频精品在线| 8x海外华人永久免费日韩内陆视频| 亚洲天堂第一页| 国内精品小视频| 亚洲日韩欧美视频一区| 欧美成人中文字幕| 日韩中文字幕在线视频播放| 亚洲色图第三页| 亚洲精品白浆高清久久久久久| 伊人久久久久久久久久久| 欧美大秀在线观看| 欧美激情综合色综合啪啪五月| 久久久久久久久久久成人| 成人网在线视频| 日韩亚洲精品视频| 日韩成人在线播放| 久久人人爽亚洲精品天堂| 亚洲影院色无极综合| 久久夜色撩人精品| 成人在线播放av| 久久av在线播放| 91免费看片在线| 国产在线不卡精品| 日韩在线视频一区| 国产91精品久久久久久久| 在线成人一区二区| 精品亚洲一区二区| 久久久久日韩精品久久久男男| 在线看片第一页欧美| xxxxxxxxx欧美| 91精品视频在线看| 91久久国产综合久久91精品网站| 久久夜精品va视频免费观看| 日韩精品中文字幕在线观看| 亚洲免费av网址| 国产精品网站入口| 国产精品免费小视频| 欧美成人免费一级人片100| 亚洲黄色成人网| 尤物九九久久国产精品的特点| 久久精品免费电影| 久久精品国产一区| 亚洲精品第一国产综合精品| 日韩在线播放视频| 日本91av在线播放| 庆余年2免费日韩剧观看大牛| 国产亚洲精品美女久久久久| 久久天天躁狠狠躁夜夜躁2014| 欧美成人免费视频| 岛国视频午夜一区免费在线观看| 日韩电影中文 亚洲精品乱码| 国产69精品久久久| 中文字幕日韩有码| 精品欧美aⅴ在线网站| 欧美一二三视频| 欧洲美女免费图片一区| 成人国产精品久久久| 亚洲国产欧美一区二区三区久久| 亚洲精品美女视频| 人人做人人澡人人爽欧美| 欧美区二区三区| 日韩第一页在线|