我想知道Html控件之间究竟有什么区别
和asp.net网页控制.为什么我们需要这两种类型的控件?
我在我的网页上放置了一个html输入文本,html按钮和asp.net文本框以及ASP.NET BUTTON
<input id="Text1" type="text" />
<input id="Button2" type="button" value="button" />
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" />
Run Code Online (Sandbox Code Playgroud)
当我获取视图源时,两者都是相似的
<input id="Text1" type="text" />
<input id="Button2" type="button" value="button" />
<input name="TextBox1" type="text" id="TextBox1" />
<input type="submit" name="Button1" value="Button" id="Button1" />
Run Code Online (Sandbox Code Playgroud)
Web控件优于html控件的优点是什么?
我在互联网上得到了一些链接,但不清楚到底是什么
它们用于.
http://www.extremeexperts.com/Net/FAQ/DiffBetweenServerandHTMLControls.aspx.
任何人都可以解释这两个控件之间的区别.
首先,如果您将Html控件从工具箱拖到设计图面上,如示例所示,则创建的标记不包含runat ="server".这意味着它是本机Html标记而不是.NET控件.没有runat ="server"的本机Html标记没有服务器端功能.因此,您无法在代码隐藏中设置"Text1"输入标记的值.
其次,一旦将runat ="server"添加到Html输入标记,就可以将它从本机Html标记转换为源自System.Web.UI.Control的HtmlControl.现在问题可能会变成派生自System.Web.UI.Control和System.Web.UI.WebControl的东西之间的差异.但是,要专门解决您的问题,让我们将标准输入类型="文本"控件与TextBox控件进行比较:
现在,所有这一切,如果您不需要任何WebControl功能,那么使用本机Html控件实质上更精简.在您的示例中,您只需将两个空控件拖到设计图面上即可.如果这就是你所需要的,那么使用.NET控件将是过度的.但是,当您开始添加自动完成和服务器端事件等时,进入浏览器的完整内容,Javascript和所有内容都要大得多.
简而言之,HTML 控件在回发时不会保留其状态。另一方面,ASP.Net 控件让您可以在多次回发时自动保存其状态。使用 ASP.Net 控件而不是 HTML 元素时的不同之处在于:
<input type="hidden" name="__VIEWSTATE" value="dDwtNTI0ODU5MDE1Ozs+.................." />
该隐藏字段由 ASP.Net 自动生成,它包含 value 属性中的所有控件状态。
| 归档时间: |
|
| 查看次数: |
2979 次 |
| 最近记录: |