Introduction
The main difference between
HTML controls and ASP.Net controls is HTML controls never uses runtat="server"
attribute to the tag. We declare HTML controls in a different way than we
declare standard ASP.NET controls. The ASP.NET Framework enables us to take any
HTML tag (real or imaginary) and add a
runat="server"
attribute to the tag. The
runat="server"
attribute converts the HTML tag into a server-side ASP.NET control. For example,
the code given below contains a
<span>
tag, which has been converted into an ASP.NET control.
<%@
Page Language="VB"
%>
<!DOCTYPE
html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script
runat="server">
Sub Page_Load()
timenow.InnerText =
DateTime.Now.ToString("T")
End
Sub
</script>
<html
xmlns="http://www.w3.org/1999/xhtml"
>
<head
id="Head1"
runat="server">
<title>HTML
Controls vs ASP.Net Controls</title>
</head>
<body>
<form
id="form1"
runat="server">
<div>
System Time :
<span
id="timenow"
runat="server"
/>
</div>
</form>
</body>
</html>
Notice that the
<span>
tag given above looks just like a normal HTML
<span>
tag except for the addition of the
runat="server"
attribute. Because the
<span>
tag is a server-side HTML control, we can program against it. In above code, the
current date and time are assigned to the
<span>
tag in the
Page_Load()
method. The HTML controls are included in the ASP.NET Framework to make it
easier to convert existing HTML pages to use the ASP.NET Framework.