当前位置:首页 > 服务器 > 正文

asp.net服务器控件(aspnet web服务器控件)

本篇文章给大家谈谈asp.net服务器控件,以及aspnet web服务器控件对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

ASP.NET框架中,服务器控件是为配合Web表单工作而专门设计的。服务器控件有两种类型,它们分别是什么?

ASPNET提供两种类型的服务器控件:HTML服务器控件和Web服务器控件。

Html服务器控件就是在其代码中加入runat=“server”。

web服务器控件就是通常使用的asp:标签。

如何:为 ASP.NET Web 服务器控件设置访问键

在Label控件中,设置以下属性:AccessKey将此属性设置为要与

Alt

键一起使用的字母或数字,如“S”表示支持

Alt+S。

AssociatedControlID

将此属性设置为按

Alt

键序列时要将焦点设置在其上的控件的

ID。

Text可以选择使用

HTML

向Text属性添加下划线或其他指示符。

下面的代码示例演示Label控件和TextBox控件的标记。

Label控件显示TextBox控件的标题,其中带下划线的字母L指示该文本框的访问键为

Alt+L。

安全注意该示例具有一个文本框,用于接受用户输入,这是一个潜在的安全威胁。默认情况下,ASP.NET

网页验证用户输入是否不包括脚本或

HTML

元素。有关更多信息,请参见

脚本侵入概述。

asp:Label

ID="Label1"

runat="server"

AccessKey="L"

AssociatedControlID="TextBox1"

Text="uL/uast

name:

"

ASP.Net中服务器控件的生命周期

(1)初始化:在此阶段中,主要完成两项工作:一、初始化在传入Web请求生命周期内所需的设置;二、跟踪视图状态。首先,页面框架通过默认方式引发Init事件,并调用OnInit()方法,控件开发人员可以重写该方法为控件提供初始化逻辑。此后,页面框架将调用TrackViewState方法来跟踪视图状态。需要注意的是:多数情况下,Control基类提供的TrackViewState方法实现已经足够了。只有在控件定义了复杂属性时,开发人员才可能需要重写TrackViewState方法。

(2)加载视图状态:此阶段的主要任务是检查ASP.NET服务器控件是否存在以及是否需要将其状态恢复到它在处理之前的请求结束的状态。因此该过程发生在页面回传过程中,而不是初始化请求过程。在此阶段,页面框架将自动恢复ViewState字典。如果服务器控件不维持其状态,或者它有能力通过默认方式保存其所有状态而使用ViewState字典,那么开发人员则不必实现任何逻辑。针对那些无法在 ViewState字典中存储的数据类型或者需要自定义状态管理的情况,开发人员可以通过重写LoadViewState方法来自定义状态的恢复和管理。

(3)处理回发数据:若要使控件能够检查客户端发回的窗体数据,那么必须实现System.Web.UI.IPostBackDataHandler接口的 LoadPostData()方法。因此只有处理回发数据的控件参与此阶段。

(4)加载:至此阶段开始,控件树中的ASP.NET服务器控件已创建并初始化、状态已还原并且窗体控件反映了客户端的数据。此时,开发人员可以通过重写OnLoad()方法来实现每个请求共同的逻辑。

(5)发送回发更改通知:在此阶段,ASP.NET服务器控件通过引发事件作为一种信号,表明由于回发而发生的控件状态变化(因此该阶段仅用于回发过程)。为了建立这种信号,开发人员必须再次使用System.Web.UI.IPostBackDataHandler接口,并实现另一方法- RaisePostBackChangedEvent()。其判断过程为:如果控件状态因回发而更改,则LoadPostData()返回true;否则返回false。页面框架跟踪所有返回true的控件并在这些控件上调用RaisePostDataChangedEvent()。

(6)处理回发事件:该阶段处理引起回发的客户端事件。为了便于将客户端事件映射到服务器端事件上进行处理,开发人员在此阶段可以通过实现 System.Web.UI.IPostBackEventHandler接口的RaisePostBackEvent()方法来实现该逻辑。由此途径,服务器控件将成功捕获回发的客户端事件进行服务器端的相应处理。

(7)预呈现:该阶段完成在生成控件之前所需要的任何工作。通常情况下是通过重写OnPreRender()方法完成该工作。需要注意的是:在该阶段,可以保存在预呈现阶段对控件状态所做的更改,而在呈现阶段进行的更改则会丢失。

(8)保存状态:如果ASP.NET服务器控件不维持状态,或者它有能力通过默认方式保存其所有状态而使用ViewState字典,那么开发人员不必在该阶段实现任何逻辑。因为这个保存状态的过程是自动的。如果ASP.NET服务器控件需要自定义状态保存,或者控件无法在ViewState字典中存储特殊的数据类型,则需要通过重写SaveViewState()方法来实现状态保存。

(9)呈现:表示向HTTP输出流中写入标记文本的过程。开发人员通过重写Render()方法使其在输出流上自定义标记文本。

(10)处置:在此阶段中,通过重写Dispose ()方法完成释放对昂贵资源的引用,如数据库链接等。

(11)卸载:完成的工作与"处置"阶段相同,但是,开发人员通常在Dispose()方法中执行清除,而不处理Unload事件。

ASP.NET框架中,服务器控件分为哪两种?

aspnet提供两种类型的服务器控件:html服务器控件和web服务器控件。

html服务器控件就是在其代码中加入runat=“server”。

web服务器控件就是通常使用的

评论

加载更多

什么是ASP.NET中的控件

ASP.NET

Web

服务器控件是

ASP.NET

网页上的对象,当请求网页时,这些对象将运行并向浏览器呈现标记。

许多

Web

服务器控件与常见的

HTML

元素(如按钮和文本框)类似。

其他控件具有复杂行为,如日历控件和管理数据连接的控件。

一般分为三大类:

1.

ASP.NET

用户控件

除在

ASP.NET

网页中使用

Web

服务器控件外,您还可以使用用于创建

ASP.NET

网页的相同技术创建可重复使用的自定义控件。

这些控件称作用户控件。

用户控件是一种复合控件,工作原理非常类似于

ASP.NET

网页

-

您可以向用户控件添加现有的

Web

服务器控件和标记,并定义控件的属性和方法。

然后可以将控件嵌入

ASP.NET

网页中充当一个单元。

2.

ASP.NET

Web

服务器控件

ASP.NET

Web

服务器控件是

ASP.NET

网页上的对象,这些对象在请求网页时运行并向浏览器呈现标记。

许多

Web

服务器控件类似于常见的

HTML

元素(如按钮和文本框)。

其他控件具有复杂行为,如日历控件以及可用于连接数据源并显示数据的控件。

ASP.NET

还提供支持

AJAX

的服务器控件。

这些控件由服务器和客户端代码组成,这些代码集成在一起可生成丰富的客户端行为。

当您将

AJAX

控件添加到

ASP.NET

网页上时,该页会自动将支持的客户端脚本发送到浏览器以获取

AJAX

功能。

您也可以提供其他的客户端代码来自定义控件的功能,但这不是必需的。

3.

ASP.NET

Web

部件控件

ASP.NET

Web

部件控件是一组集成控件,用于创建这样的网站:最终用户可以在浏览器中直接修改网页的内容、外观和行为。

本节中的主题提供有关

Web

部件的定义、工作原理以及如何使用

Web

部件创建用户可自定义的

ASP.NET

网页的信息。

html服务器控件和asp.net标准控件的不同?

Asp.net服务器控件,也叫Web服务器控件和Html服务器端控件的区别:

1、 Asp.net服务器控件提供更加统一的编程接口,如每个Asp.net服务器控件都有Text属性。

2、 隐藏客户端的不同,这样程序员可以把更多的精力放在业务上,而不用去考虑客户端的浏览器是ie还是firefox,或者是移动设备。

3、 Asp.net服务器控件可以保存状态到ViewState里,这样页面在从客户端回传到服务器端或者从服务器端下载到客户端的过程中都可以保存。

4、 事件处理模型不同,Html标注和Html控件的事件处理都是在客户端的页面上,而Asp.net服务器控件则是在服务器上,举例来说:

input id="Button4" type="button" value="button" runat="server"/是Html控件,此时我们点击此按钮,页面不会回传到服务器端,原因是我们没有为其定义鼠标点击事件。input id="Button4" type="button" value="button" runat="server" onserverclick="test" /我们为Html控件添加了一个onserverclick事件,点击此按钮页面会发回服务器端,并执行test(object sender, EventArgs e)方法。

asp:Button ID="Button2" runat="server" Text="Button" /是Asp.net服务器控件,并且我们没有为其定义click,但是我们点击时,页面也会发回到服务器端。

 由此可见:Html标注和Html控件的事件是由页面来触发的,而Asp.net服务器控件则是由页面把Form发回到服务器端,由服务器来处理。

关于asp.net服务器控件和aspnet web服务器控件的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

取消
扫码支持 支付码