婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Ajax Control Toolkit 34個服務器端控件第1/2頁

Ajax Control Toolkit 34個服務器端控件第1/2頁

熱門標簽:蓄意標記地圖標注 莆田防封電銷卡價格 電銷機器人適用范圍 信貸電銷機器人有用嗎 廣西ai語音電銷機器人哪家好 辦理一個400電話多少錢 察縣地圖標注 如何用地圖標注各分公司 接聽電話機器人哪有
1. Accordion
【功能概述】
Accordion可以讓你設計多個panel 并且一次只顯示一個Panel .在頁面上的顯示效果就像是使用了多個CollapsiblePanels只不過每一次只展開其中一個CollapsiblePanel.Accordion控件內部包含了若干個AccordionPane,每一個AccordionPane的template里包括了對其Header和Content的定義。我們可以在后臺代碼中通過SelectedIndex屬性取得當前展開的哪一個Panel,還可以控制哪一個Panel展開。
經常可以見到類似的效果,比如QQ、Msn好友分類的折疊效果。
【細節】
(1)不要把Accordion放在Table中而又把 FadeTransitions 設置為True,這將引起布局混亂
(2) 在AccordionPane模板中的Content中可以定義任何Web元素,表現的就像一個容器
(3) AccordionPane內容模板自動改變大小有三種AutoSize modes :None(推薦) Limit Fill
(4) $find('ctl00_ContentPlaceHolder1_MyAccordion_AccordionExtender')這里找到的是Behavior.什么是Behavior呢?在Asp.net Ajax框架中包含一組動作并完成一個功能. Accordion的一個Behavior就是淡入淡出.
找到Behavior的引用,behavior.set_FadeTransitions() behavior.get_FadeTransitions()的方式來實現具體某一個Behavior的訪問和修改.
var behavior = $find('ctl00_SampleContent_MyAccordion_AccordionExtender');這種寫法是不好的,我們在自動測試的頁面中發現了更好的寫法: var behavior=$find("%= MyAccordion.ClientID %>_AccordionExtender");
【代碼示意】
script language="javascript" type="text/javascript">
function toggleFade() {
var behavior = $find('ctl00_ContentPlaceHolder1_MyAccordion_AccordionExtender');
if (behavior) {
behavior.set_FadeTransitions(!behavior.get_FadeTransitions());
}
}
function changeAutoSize() {
var behavior = $find('ctl00_ContentPlaceHolder1_MyAccordion_AccordionExtender');
var ctrl = $get('autosize'); //這里找的是下拉列表控件,不是Behavior
if (behavior) {
var size = 'None'; // 這里順便看看怎么使用Select
switch (ctrl.selectedIndex) {
case 0 :
behavior.get_element().style.height = 'auto';
size = AjaxControlToolkit.AutoSize.None;
break;
case 1 :
behavior.get_element().style.height = '400px';
size = AjaxControlToolkit.AutoSize.Fill;
break;
case 2 :
behavior.get_element().style.height = '400px';
size = AjaxControlToolkit.AutoSize.Limit;
break;
}
behavior.set_AutoSize(size);
}
if (document.focus) {
document.focus();
}
}
/script>
AjaxToolkit:Accordion ID="MyAccordion" runat="server" SelectedIndex="0" HeaderCssClass="accordionHeader"
ContentCssClass="accordionContent" FadeTransitions="false" FramesPerSecond="40"
TransitionDuration="250" AutoSize="None">
Panes>
AjaxToolkit:AccordionPane ID="AccordionPane1" runat="server">
Header>
a href="" onclick="return false;" class="accordionLink">1. Accordion/a>/Header>
Content>
/Content>
/AjaxToolkit:AccordionPane>
/Panes>
/AjaxToolkit:Accordion>
2. AlwaysVisibleControl
【功能概述】
AlwaysVisibleControl 是一個簡單的擴展控件可以讓一部分內容浮動在頁面上,當滾動頁面或者改變瀏覽器大小時總是可見的。它可以擴展任意一個Asp.net 控件,并可按照要求設置水平 豎直方向上的相對距離.
最多的應用是在線閱讀的目錄和不勝其煩的浮動小廣告。
【細節】
(1) 避免控件閃爍,要擴展的控件要使用absolutely position
(2) HorizontalSide="Center" VerticalSide="Top" 使用這個方式控制浮動的位置
(3) Var label = ocument.getElementById('ctl00_SampleContent_currentTime');這行代碼我們可以使用更簡單的方法:
var label = $get('ctl00_SampleContent_currentTime');
【代碼示意】
代碼示意:
cc1:AlwaysVisibleControlExtender ID="AlwaysVisibleControlExtender1" HorizontalSide="Center" VerticalSide="Top" TargetControlID="Panel1" runat="server">

3. Animation
【功能概述】
28個控件種效果最酷的!顧名思義實現動畫效果。它是一個插入式,可擴展的框架可以方便的為你的頁面添加動畫效果。
【細節】
請參考頁面代碼閱讀下面的細節內容:
(1)Sys.UI.DomElement.getLocation(b) 取得控件位置的函數,常用!!!
(2)動畫分為兩種:Animation Action 后者的強大讓我很興奮
(3)Sequence> /Sequence> 順序執行的動畫腳本
(4)Parallel> Parallel > 并發執行的動畫腳本
(5)【Action】 StyleAction AnimationTarget="btnCloseParent" Attribute="opacity" value="0" /> 控制目標元素外觀樣式,屬性--值的格式修改,一個元素可以應用多個StyleAction
(6)【Action】EnableAction AnimationTarget="ctl00_ContentPlaceHolder1_btnInfo" Enabled="true" /> 控件是否可用使用的方式跟上面是一樣的,當前控件可省略AnimationTarget
(7)【Action】 ScriptAction Script="Cover($get('ctl00_ContentPlaceHolder1_btnInfo'), $get('flyout'));" />執行一段腳本的Action
(8) 【Action】 HideAction />隱藏目標的控件
(9) 【Action】OpacityAction AnimationTarget="info" Opacity="0" /> 設置透明度的Action
(10)【Animation】 FadeIn AnimationTarget="info" Duration=".2"/> FadeOut /> 淡入淡出
(11)【Animation】Scale ScaleFactor="0.05" Center="true" ScaleFont="true" FontUnit="px" /> 控制目標元素的大小但是注意:If scaleFont is true, the size of the font will also scale with the element. If center is true, then the element's center will not move as it is scaled. It is important to note that the target must be positioned (i.e. absolutely) so that settings its top/left properties will change its location in order for center to have an effect.
(12) 【Animation】 Pulse Duration=".1" /> 脈搏跳動效果
(13)【Animation】 Color Duration=".2" StartValue="#FFFFFF" EndValue="#FF0000" Property="style" PropertyKey="color" /> 顏色漸變效果,設置起始結束顏色就可以
(14) 【Animation】 Resize Width="260" Height="280" />改變元素的大小Action
(15)動畫效果是在用戶某一個動作發生的時候觸發,觸發的時機包括:OnLoad OnClick OnMouseOver OnMouseOut OnHoverOver OnHoverOut
正式版的頁面文件為動畫腳本添加了注釋更加清晰易懂.上面列出的是常用的一些動畫效果,全部資料參見Anmation Reference。
仔細閱讀Animation的頁面代碼,其實我們已經提前觸摸到了Xaml的編程風格。Asp.net Ajax之后的下一代WEB界面是WPF/E,WPF/E現在支持的是”javascript+Xaml” 還不支持”C# + Xaml”。
下一代的WEB UI會是怎樣的?下一個版本的Asp.net 會怎樣安排Ajax的位置?WPF/E會不會被整合在新版本的Asp.net中呢?期待中……
【示意代碼】
代碼示意:
AjaxToolkit:AnimationExtender ID="ae"
runat="server" TargetControlID="ctrl">
Animations>
OnLoad> /OnLoad>
OnClick> /OnClick>
OnMouseOver> /OnMouseOver>
OnMouseOut> /OnMouseOut>
OnHoverOver> /OnHoverOver>
OnHoverOut> /OnHoverOut>
/Animations>
/AjaxToolkit:AnimationExtender>
4. AutoComplete NEW!!!
【功能概述】
AutoComplete控件是對Asp.net文本框控件的擴展,當用戶詞匯前面的字母時以彈出區域的形式給出備選詞。這個功能的完成依賴于特定的Web Service。
在正式版的Ajax Control Toolkit中看到自動完成擴展控件有一種感覺:它終于出現在了它應該出現的地方。之前AutoComplete控件是在CTP版本中以核心組件的形式出現的,這個功能極為明確的控件被歸類到核心組件,我還是比較迷惑。正式版中它終于成為了一個擴展控件。
Google的自動完成功能,新浪 網易等信箱的收件人自動完成功能是這個功能的成功應用。
【細節】
從Atlas的版本開始,AutoComplete的使用方法就沒有太大的改變,只要注意:
(1)調用的Web Service方法簽名有要求:
[WebMethod]
public string[] GetCompletionList(string prefixText, int count) { ... }
(2)MinimumPrefixLength最短前綴字符數,就是說你至少要鍵入幾個字符才會出現提示
5. Calendar NEW!!!
【功能概述】
Calendar同樣是對文本框的擴展,當點擊文本框的時候彈出日期選擇選項。現在的版本提供的功能已經和WinForm中的日期控件一樣,可以通過點擊日期選擇,點擊箭頭在年月之間切換。
【細節】
(1)同樣是對文本框的擴展,文本框獲得焦點就會出現日期選擇,樣式是可以自定義的
(2)雖然一定是對文本框的擴展但是我們還是可以指定彈出按鈕PopupButtonID,一旦這個值設定了,文本框獲得焦點也不會彈出日期選擇
(3)不需要把它放在UpdatePanel中
6. CascadingDropDown
【功能概述】
CascadingDropDown 控件是對ASP.NET DropDownList control的擴展,實現對一個DropDownList操作時其它DropDownList發生相應的變化。這個功能的實現依賴于Web Service。
【細節】
(1)如果使用Web service 方法簽名必須符合下面的形式:
[WebMethod]
public CascadingDropDownNameValue[] GetDropDownContents(
string knownCategoryValues, string category){...}
(2)在閱讀代碼的時候請關注:Category屬性。官方說法The name of the category this DropDownList represents 實打開~/App_Data/CarsService.xml你就發現這是Xml的元素標簽。從這個角度我們就解決了為什么聯動,即聯動的本質;同時也明白了調用Service的參數約定。
【示意代碼】
AjaxToolkit:CascadingDropDown ID="CascadingDropDown1" runat="server" TargetControlID="DropDownList1" Category="Make" PromptText="Please select a make" LoadingText="[Loading makes ]" ServicePath="CarsService.asmx" ServiceMethod="GetDropDownContents"/>
AjaxToolkit:CascadingDropDown ID="CascadingDropDown2" runat="server" TargetControlID="DropDownList2" Category="Model" PromptText="Please select a model" LoadingText="[Loading models ]" ServiceMethod="GetDropDownContentsPageMethod" ParentControlID="DropDownList1"/>
AjaxToolkit:CascadingDropDown ID="CascadingDropDown3" runat="server" TargetControlID="DropDownList3" Category="Color" PromptText="Please select a color" LoadingText="[Loading colors ]" ServicePath="~/CascadingDropDown/CarsService.asmx" ServiceMethod="GetDropDownContents" ParentControlID="DropDownList2"/>
另外頁面上還有一段定義UpdatePanel的代碼很典型,可以作為參考:
asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional" RenderMode="inline">
ContentTemplate>
asp:Label ID="Label1" runat="server" Text="[No response provided yet]" />
/ContentTemplate>
Triggers>
asp:AsyncPostBackTrigger ControlID="DropDownList3" EventName="SelectedIndexChanged" />
/Triggers>
/asp:UpdatePanel>
7. CollapsiblePanel
【功能概述】
這個控件幾乎在每一個頁面上都出現了。它是非常靈活的一個控件,可以擴展任何ASP.NET Panel control。在頁面上輕松實現展開收縮效果。這種效果我們最熟悉的恐怕就是XP的文件任務欄了。
【細節】
(1) CollapsiblePanel 默認認為使用了 標準 CSS box model 早期的瀏覽器要!DOCTYPE 中設置頁面為自適應方式提交數據rendered in IE's standards-compliant mode.
(2) 可以自動展開 自動收縮Autoexpand="true" AutoCollapse="true"但是這兩個本身是互斥的不能同時為True;如果設置了這兩個屬性其中一個為True就不要在設置 Collapsed="True",這樣就沒有意義了。
(3) TextLabelID="Label1"這個屬性有什么深意\高級的操作么?我還在研究。。。
代碼示意:
AjaxToolkit:CollapsiblePanelExtender ID="cpe" runat="Server"
TargetControlID="Panel1"
CollapsedSize="0"
ExpandedSize="300"
Collapsed="True"
ExpandControlID="LinkButton1"
CollapseControlID="LinkButton1"
AutoCollapse="False"
AutoExpand="False"
ScrollContents="True"
TextLabelID="Label1"
CollapsedText="Show Details "
OpenedText="Hide Details"
ImageControlID="Image1"
ExpandedImage="~/images/collapse.jpg"
CollapsedImage="~/images/expand.jpg"
ExpandDirection="Height"/>
8. ConfirmButton
【功能概述】
這個控件是對Button和繼承了Button的控件的擴展,它可以捕捉到用戶點擊了對話框中的“是”“否”;如果是“是”就繼續執行后面的代碼,反之就停止執行它默認的提交行為。
【細節】
(1) 要擴展的LinkButton Button 以及ConfirmButtonExtender都要放在updatepanel里面
如果是放在外面,點擊“確定”或者“取消”之后還是會導致頁面刷新!
(2)更簡單的方法:
this.Button1.Attributes["onclick"]="javascript:return confirm('確定要停止下載么?');";
(3) 如果是需要服務器端獲取用戶選擇,還是使用模式彈出吧
9.DragPanel
【功能概述】
DragPanel extender可以輕松的讓控件 "draggability".DragPanel 擴展的目標是任意 ASP.NET Panel .你可以設置拖動行為的細節,比如哪里是類似于標題欄一樣的區域。
【細節】
(1) TargetControlID 要拖動的控件
(2) DragHandleID 拖動的標題欄所在的ControlID 示例代碼中: panel6包含panel7(標題) panel8(內容)擴展的對象是panel6
(3) 是不是發現這段JS代碼了呢?如果去掉這段代碼,圖到頁面邊緣的時候是不正常的,它自己跑回原來位置了 :)
script type="text/javascript">
// The following snippet works around a problem where FloatingBehavior
// doesn't allow drops outside the "content area" of the page - where "content
// area" is a little unusual for our sample web pages due to their use of CSS
// for layout.
function setBodyHeightToContentHeight() {
document.body.style.height = Math.max(document.documentElement.scrollHeight, document.body.scrollHeight)+"px";
}
setBodyHeightToContentHeight();
$addHandler(window, "resize", setBodyHeightToContentHeight);
/script>
【示意代碼】
代碼示意
AjaxToolkit:DragPanelExtender ID="DPE1" runat="server"
TargetControlID="Panel3"
DragHandleID="Panel4" />
10. DropDown
【功能概述】
DropDown 同樣是一個 ASP.NET Ajax extender 可以對任何 ASP.NET control 進行擴展實現 SharePoint-style drop-down menu效果。彈出的只不過是其它的panel或者控件而已。 在IE瀏覽器中下拉列表總是在最前面的,的確是影響頁面效果,這個控件的出現可以解決這一問題.這隨時隨地的彈出窗口成為WEB 2.0網站的標志性建筑,彈出的東西也越來越豐富。
【細節】
(1)TargetControlID要在什么控件上實現擴展
(2)DropDownControlID彈出來什么
(3) 示例中是對一個Label進行的擴展,我試著擴展TextBox效果更好!
【示意代碼】
代碼示意:
asp:Panel ID="DropPanel" runat="server" CssClass="ContextMenuPanel" Style="display: none;
visibility: hidden;">
asp:LinkButton runat="server" ID="Option1" Text="Option 1" CssClass="ContextMenuItem"
OnClick="OnSelect" />
asp:LinkButton runat="server" ID="Option2" Text="Option 2" CssClass="ContextMenuItem"
OnClick="OnSelect" />
asp:LinkButton runat="server" ID="Option3" Text="Option 3 (Click Me!)" CssClass="ContextMenuItem"
OnClick="OnSelect" />
/asp:Panel>
cc1:DropDownExtender runat="server" ID="DDE" TargetControlID="TextLabel"
DropDownControlID="DropPanel" />
還有一段代碼有很多可以學習的地方:
代碼示意:
asp:UpdatePanel id="Update" runat="server">
ContentTemplate>
asp:Label id="lblSelection" runat="server" Style="padding: 5px;" />
/ContentTemplate>
Triggers>
asp:AsyncPostBackTrigger ControlID="Option1" EventName="Click" />
asp:AsyncPostBackTrigger ControlID="Option2" EventName="Click" />
asp:AsyncPostBackTrigger ControlID="Option3" EventName="Click" />
/Triggers>
/asp:UpdatePanel>
AjaxToolkit:UpdatePanelAnimationExtender ID="UpdateAnimation" runat="server" TargetControlID="Update" BehaviorID="Highlight">
Animations>
OnUpdated>
Sequence>
ScriptAction Script="$find('Highlight')._onUpdated._animation._animations[1].set_target($get('ctl00_ContentPlaceHolder1_lblSelection'));" />
Color Duration=".5" StartValue="#FFFF90" EndValue="#FFFFFF" Property="style" PropertyKey="backgroundColor" />
/Sequence>
/OnUpdated>
/Animations>
/AjaxToolkit:UpdatePanelAnimationExtender>
11. DropShadow
【功能概述】
陰影效果
【 細節】
(1) Width 單位:px 默認5px
(2) Opacity 不透明度0-1.0 默認.5
【示意代碼】
代碼示意:
AjaxToolkit:DropShadowExtender ID="dse" runat="server"
TargetControlID="Panel1"
Opacity=".8"
Rounded="true"
TrackPosition="true" />
12. DynamicPopulate
【功能概述】
能實用Web Service或頁面方法來動態的替換控件的內容。調用的方法返回的是一個Html的字符串,作為目標元素的子節點插入其中。
【 細節】
(1)ClearContentsDuringUpdate 替換之前先清除以前的內容(默認True)
(2)PopulateTriggerControlID 觸發器綁定的控件 單擊時觸發
(3)ContextKey傳遞給Web Service的隨機字符串
(4) Web Service方法簽名必須符合下面的形式:
[WebMethod]
string DynamicPopulateMethod(string contextKey)
{...}
Note you can replace "DynamicPopulateMethod" with a naming of your choice, but the return
type and parameter name and type must exactly match, including case.
(5) 我們非常欣慰的一點就是BehaviorID="dp1",這種用法是我所期望的。
(6) CustomScript 怎么用呢??This script must evaluate to a string value. ??
【示意代碼】
代碼示意:
AjaxToolkit:DynamicPopulateExtender ID="dp" runat="server"
TargetControlID="Panel1"
ClearContentsDuringUpdate="true"
PopulateTriggerControlID="Label1"
ServiceMethod="GetHtml"
UpdatingCssClass="dynamicPopulate_Updating" />
代碼示意2:
asp:Panel ID="Panel1" runat="server" CssClass="dynamicPopulate_Normal">
/asp:Panel> //要擴展的panel
AjaxToolkit:DynamicPopulateExtender ID="dp" BehaviorID="dp1" runat="server"
ClearContentsDuringUpdate="true"
PopulateTriggerControlID="Label1"
TargetControlID="Panel1"
ServiceMethod="GetHtml"
UpdatingCssClass="dynamicPopulate_Updating">
/AjaxToolkit:DynamicPopulateExtender>
script runat="server">
[System.Web.Services.WebMethod]
[System.Web.Script.Services.ScriptMethod]
public static string GetHtml(string contextKey) {
// a little pause to mimic a latent call.
//
System.Threading.Thread.Sleep(250);
string value = "";
if (contextKey == "U") {
value = DateTime.UtcNow.ToString();
} else {
value = String.Format("{0:" + contextKey + "}", DateTime.Now);
}
return String.Format("span style='font-family:courier new;font-weight:bold;'>{0}/span>", value);
}
/script>
asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
script type="text/javascript">
function updateDateKey(value) {
var behavior = $find('dp1'); //這樣使用BehaviorID可是方便多了
if (behavior) {
behavior.populate(value);// 內部實現調用了Service
}
}
Sys.Application.add_load(function() {updateDateKey('G');}); //頁面加載時要執行的腳本!
/script>
13. FilteredTextBox
【功能概述】
FilteredTextBox擴展控件用來阻止用戶在文本框輸入無效字符 。由于這種效果的實現是依賴于deactivating JavaScript(怎么翻譯呢?),所以不要期望數據會發送到服務器端進行校驗。
【細節】
(1)過濾條件Numbers LowercaseLetters UppercaseLetters Custom
(2)過濾條件也可以是Custom的組合 FilterType="Custom, Numbers"
(3)ValidChars="+-=/*()." Custom要定義這樣的有效字符串
(4)這個控件我認為是聊勝于無,我們要把允許輸入的數據進行枚舉,太難了。事實上,這個控件在任何狀態下都是接受中文的。如果使用正則表達式情形或許好些。看它的實現代碼還有進一步改進的可能,學習研究中……
【示意代碼】
示意代碼:
AjaxToolkit:FilteredTextBoxExtender ID="ftbe" runat="server"
TargetControlID="TextBox3"
FilterType="Custom, Numbers"
ValidChars="+-=/*()." />
在該控件的實現代碼中我發現了這樣一段,這可能是一個突破口:
特殊鍵排除代碼:
var scanCode;
if (evt.rawEvent.keyIdentifier) {
// Safari
// Note (Garbin): used the underlying rawEvent insted of the DomEvent instance.
if (evt.rawEvent.ctrlKey || evt.rawEvent.altKey || evt.rawEvent.metaKey) {
return;
}
if (evt.rawEvent.keyIdentifier.substring(0,2) != "U+") {
return;
}
scanCode = evt.rawEvent.charCode;
if (scanCode == 63272 /* Delete */) {
return;
}
}
else {
scanCode = evt.charCode;
}
if (scanCode scanCode >= 0x20 /* space */) {
var c = String.fromCharCode(scanCode);
if(!this._processKey(c)) {
evt.preventDefault();
}
}
}

14. HoverMenu
【功能概述】
HoverMenu控件可以擴展任何 ASP.NET WebControl, 同時將把附加的顯示內容關聯到該控件上,當用戶移動鼠標到該控件的時候附加的內容將顯示出來。
【細節】
(1) PopupControlID要彈出來什么
(2)PopupPostion 在哪里彈出來Left (Default), Right, Top, Bottom, Center.
(3)OffsetX/OffsetY 彈出項與源控件的距離
(4) PopDelay 彈出延時顯示 單位milliseconds. Default is 100.
【代碼示意】
代碼示意:
AjaxToolkit:HoverMenuExtender ID="hme2" runat="Server"
TargetControlID="Panel9"
HoverCssClass="popupHover"
PopupControlID="PopupMenu"
PopupPosition="Left"
OffsetX="0"
OffsetY="0"
PopDelay="50" />
示例頁面上還有一個小細節:
HttpUtility.HtmlEncode()使用 HttpUtility.HtmlEncode 將危險的符號轉換為它們的 HTML 表示形式。
代碼示意:
asp:Label Font-Bold="true" ID="Label1" runat="server" Text='%# HttpUtility.HtmlEncode(Convert.ToString(Eval("Title"))) %>'>/asp:Label>/td>
asp:Label ID="Label2" runat="server" Text='%# HttpUtility.HtmlEncode(Convert.ToString(Eval("Description"))) %>'>/asp:Label>/td>
asp:Label ID="Label3" runat="server" Text='%# Eval("Priority") %>'>/asp:Label>
15. MaskedEdit NEW!!!
【功能概述】
MaskedEdit 控件是對TextBox control的擴展.用戶輸入會在客戶端進行驗證。在示例頁面中,我感覺實際效果并不是太好所以沒有深入學習,不多說了。
16. ModalPopup
【功能概述】
ModalPopup 擴展控件允許在頁面上模式彈出內容并阻止用戶和頁面上其他區域的交互。模式彈出區域的樣式都是可以自定義的。 用戶可以在模式彈出框選擇OK/Cancel,對用戶選擇的處理方式有兩種:使用客戶端腳本或者PostBack到服務器端。這樣我們就得到了用戶的選擇結果!
【細節】
(1) 看下面的代碼可以看到執行客戶端腳本的方法。
(2) 應該說這個控件是提供了一個模式彈出對話框的模板
(3) 在正式版以前的所有版本,這個控件在Opear瀏覽器中都是不正常的。正式版已經修正這個BUG,現在正在比較學習兩個版本的源代碼,看看問題的原因和解決方法是什么。
【示意代碼】
代碼示意:
asp:Panel ID="Panel2" runat="server" CssClass="modalPopup" style="display:none">
p>
asp:Label ID="Label1" runat="server" BackColor="Blue" ForeColor="White" Style="position: relative"
Text="信息提示">/asp:Label>nbsp;/p>
p >確定要刪除當前下載的任務么?/p>
p style="text-align:center;">
asp:Button ID="Button1" runat="server" Text="OK" >/asp:Button>
asp:Button ID="Button2" runat="server" Text="Cancel">/asp:Button>
/p>
/asp:Panel>
AjaxToolkit:ModalPopupExtender ID="ModalPopupExtender" runat="server" TargetControlID="LinkButton1"
PopupControlID="Panel2" BackgroundCssClass="modalBackground" DropShadow="true"
OkControlID="Button1" OnOkScript="onOk()" CancelControlID="CancelButton" />
17. MutuallyExclusiveCheckBox
【功能概述】
互斥復選框就像RadioButton一樣,應用的場景是:“a number of choices are available but only one can be chosen”
【細節】
(1)Key屬性用來分組就像RdiolistGroup一樣
(2)argetControlID用來綁定已有的CheckBox
【代碼示意】
AjaxToolkit:MutuallyExclusiveCheckboxExtender runat="server"
ID="MustHaveGuestBedroomCheckBoxEx"
TargetControlID="MustHaveGuestBedroomCheckBox"
Key="GuestBedroomCheckBoxes" />
12下一頁閱讀全文

標簽:鷹潭 銅陵 益陽 張掖 儋州 平涼 延邊 阿拉善盟

巨人網絡通訊聲明:本文標題《Ajax Control Toolkit 34個服務器端控件第1/2頁》,本文關鍵詞  Ajax,Control,Toolkit,34個,服務器,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Ajax Control Toolkit 34個服務器端控件第1/2頁》相關的同類信息!
  • 本頁收集關于Ajax Control Toolkit 34個服務器端控件第1/2頁的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    欧美va亚洲va在线观看蝴蝶网| www.色综合.com| 99国产精品国产精品久久| 国产一区二区三区| 久久久一区二区三区捆绑**| 精品国产免费一区二区三区四区 | 国产一区日韩二区欧美三区| 3atv一区二区三区| 午夜精品一区二区三区免费视频| 欧美亚洲国产bt| 亚洲麻豆国产自偷在线| 亚洲精品国产第一综合99久久| 欧美体内she精视频| 麻豆视频观看网址久久| 免费在线观看日韩欧美| 久久女同精品一区二区| 菠萝蜜视频在线观看一区| 一本一道波多野结衣一区二区| 99久久久久免费精品国产 | 久久久久久麻豆| 精品国产乱码久久久久久浪潮 | 91亚洲永久精品| 日韩视频不卡中文| 欧美日韩高清一区二区| 日韩av高清在线观看| 亚洲成人精品在线观看| 亚洲午夜国产一区99re久久| 日本不卡一区二区| 成人综合婷婷国产精品久久蜜臀 | 国产偷国产偷精品高清尤物| 91久久国产最好的精华液| 国产日产欧美一区二区三区| 亚洲一线二线三线久久久| 18成人在线观看| 久久久蜜臀国产一区二区| 久久久久久久久97黄色工厂| 亚洲成人av免费| 欧美高清在线一区二区| 欧美日韩高清在线播放| 欧美精品vⅰdeose4hd| 6080亚洲精品一区二区| 欧美亚洲日本一区| 日av在线不卡| 日韩电影免费在线| 中文字幕乱码久久午夜不卡| 伊人夜夜躁av伊人久久| 欧美婷婷六月丁香综合色| 色噜噜狠狠成人中文综合| 一区二区激情视频| 亚洲视频一二区| 依依成人综合视频| 日本亚洲天堂网| 日韩—二三区免费观看av| 久久99精品一区二区三区三区| 中文一区二区完整视频在线观看| 亚洲一区二区黄色| 亚洲人成精品久久久久| 亚洲欧洲99久久| 日韩视频一区在线观看| 日韩一区二区三区电影在线观看| 国产亚洲短视频| 五月天国产精品| 自拍视频在线观看一区二区| 日韩色在线观看| 亚洲精选免费视频| 国产一区二区电影| 91国产丝袜在线播放| 亚洲成人动漫在线观看| 黑人巨大精品欧美黑白配亚洲| 欧美视频在线播放| 2021久久国产精品不只是精品| 成人综合婷婷国产精品久久免费| 精品一区二区在线看| 福利电影一区二区| 国产精品美女久久久久久| 99国产精品久久久久| 亚洲色图欧美激情| 日本视频一区二区| 欧美色网一区二区| 一本大道av一区二区在线播放| 色天天综合久久久久综合片| 久久久久成人黄色影片| 色婷婷精品大在线视频| 国产精品美女久久久久aⅴ国产馆| 日韩一区二区精品葵司在线| 亚洲一区二区三区四区不卡| 在线视频一区二区三| 日本麻豆一区二区三区视频| 玉米视频成人免费看| 天堂在线亚洲视频| 午夜在线成人av| 99精品一区二区| 国产一区激情在线| 午夜在线电影亚洲一区| av不卡一区二区三区| 色女孩综合影院| 2020国产精品久久精品美国| 欧美激情一区二区三区全黄| 亚洲视频一区在线| 国产a区久久久| 国产91在线观看| 欧美一区二区三区在线看| 中文字幕一区二区三区在线观看 | 欧美极品少妇xxxxⅹ高跟鞋| 欧美激情一区二区三区| 国产一区亚洲一区| 黄页视频在线91| 亚洲综合久久av| 自拍偷拍亚洲激情| 国产成人日日夜夜| 久久综合资源网| 丝袜亚洲另类欧美| 中文字幕在线观看不卡| 精品写真视频在线观看| 97久久精品人人做人人爽| 91免费观看国产| 美女爽到高潮91| 天天影视涩香欲综合网| 色综合天天在线| 国产精品久久久久久久第一福利| 成人黄色一级视频| 亚洲视频狠狠干| 日韩一区二区麻豆国产| 精品免费日韩av| 毛片基地黄久久久久久天堂| 国产欧美日韩三区| 欧美亚洲国产bt| 夜夜爽夜夜爽精品视频| 天堂一区二区在线| 久久久av毛片精品| 欧美理论在线播放| 3d动漫精品啪啪1区2区免费 | 精品99久久久久久| 久久这里只精品最新地址| 日韩一级高清毛片| 欧洲精品一区二区三区在线观看| 狠狠色丁香婷婷综合| 欧美精品免费视频| 成人午夜av在线| eeuss鲁片一区二区三区在线看| 精品国产伦一区二区三区免费| 99精品国产91久久久久久| 91福利区一区二区三区| 日韩**一区毛片| 色综合久久久久综合99| 免费看欧美美女黄的网站| 91国内精品野花午夜精品| 欧美性猛交xxxxxx富婆| 欧美一区二区三区公司| 日韩视频在线永久播放| 亚洲日韩欧美一区二区在线| 91精品国产综合久久久蜜臀图片| 欧美高清性hdvideosex| 欧美私人免费视频| 麻豆高清免费国产一区| 最好看的中文字幕久久| 精品国产伦理网| 国产一区二区毛片| 欧美三级中文字| 成人晚上爱看视频| 国产一区二区精品在线观看| 1区2区3区精品视频| 91影院在线免费观看| 国产精品蜜臀在线观看| 一区二区成人在线视频| 久久综合九色欧美综合狠狠| 另类小说综合欧美亚洲| 国产精品91xxx| 中文字幕一区二区日韩精品绯色| 亚洲一区二区三区自拍| 成人福利视频网站| 欧美一区二区三区四区五区| 免费三级欧美电影| 性欧美大战久久久久久久久| 精品奇米国产一区二区三区| 亚洲一线二线三线久久久| 亚洲欧洲性图库| 国产精品全国免费观看高清 | 韩国中文字幕2020精品| 欧美一级片在线观看| 精品一区二区在线免费观看| 久久一留热品黄| 8v天堂国产在线一区二区| 国产欧美精品一区二区三区四区| 国产成人精品一区二区三区四区 | 激情综合色综合久久综合| 国产精品毛片无遮挡高清| 欧美国产日韩在线观看| 99精品视频在线免费观看| 欧美视频一区二| 99精品欧美一区二区三区综合在线| 成人手机在线视频| 污片在线观看一区二区| 日韩一区二区在线播放| 91网上在线视频| 国模冰冰炮一区二区| 亚洲综合无码一区二区| 欧美狂野另类xxxxoooo| 成人aaaa免费全部观看| 日韩高清一区在线|