日期:2009-12-07  浏览次数:20512 次

整天的泡在考研的资料里面,闲暇时就和朋友们大谈特谈NGWS,一天终于被lazy兄一棍子打醒,"都什么年代了,还在谈NGWS",慌忙中赶快重新下载我心目中的"NGWS",装上后,发现今非昔比,这个NGWS已经改名叫Micosoft .Net ,ASP+也堂而皇之的改名为ASP.Net.而且现在不仅window 2000能够安装调试asp.net了,而且连最烂的"瘟酒吧"也可以了,于是发现自已离时代越来越远了.....(台下人:发表什么感叹,还不快入正题)(同时,一不明飞行物突然向飞刀砸来,飞刀立刻倒在血泊中.....)

WEB控件
按照计划我们这一节要谈Web控件,我想了半天也不知道如何定义这个web控件,它比html控件难于理解,毕竟HTML太像原来我们熟悉的东东了。而web控件确与我们平常见到的有很大的出入,不知道大家还记不记得我说过的一句话,那就是ASP.net的程序就像是写VBVC中的窗口,先再这些窗口中加入我们的需要的控件,然后再对这些控件进行操作。如果你学过一点点VBVC的编程,那么理解这个就不难了,ASP.net中的web控件就像是VBVC中的控件一样。我们先在页面中摆好这些控件,然后再通过Page_Load以及其它一些自定义事件来对他们进行控制。我们还是通过看一个实例来了解一下吧。我们先举简单的Label控件吧.

源代码如下:

<% @ Page Language="C#" %>
<% @ Import Namespace="System.Data" %>
<Script Language="C#" Runat="Server">
public void Page_Load(Object src,EventArgs e)
{
if(!Page.IsPostBack)
{
label3.Text="这是黑体字,并且带下划线";
}
}
</script>
<html>
<head>
<title>测试Label控件</title>
</head>
<body>
<bold>测试Label控件:<br></bold>
<asp:Label id="label1" font-size="9pt" font-bold="true" forecolor="red" runat="server">这是红色粗体的文字</asp:Label><br>
<asp:Label id="label2" font-size="10pt" font-italic="true" forecolor="blue" runat="server" text="这是蓝色斜体的文字" /><br>
<asp:Label id="label3" font-size="11pt" font-underline="true" runat="server" />

</body>
</html>

这段程序执行后的结果是

  测试Label控件:
这是红色粗体的文字
这是蓝色斜体的文字
这是黑体字,并且带下划线

看看源代码,再看看程序执行的结果是不是发现Label控件和VB中的Label控件很相近:)

(注:你在你的机器上看到的中文可能是乱码,那么请您打开x:\winnt\microsoft\framework\v1.0.224目录,找到其中的config.web文件,打开它,找到下面的文字:

<globalization
requestencoding="iso-8859-1"
responseencoding="iso-8859-1"
/>

把其中的iso-8859-1改为gb2312,OK,再执行一下程序,中文是不是出来了:)

这里我们用了三种方法来操作Label控件,第一种是类似HTML的闭合标签,将要写的字写在<asp:Label></asp:Label>之间;第二种是用到了Label控件Text属性;第三种,是通过执行Page_Load事件而把文字写进Label控件的。这三种方法都很有用,看你自已的喜欢了,第三种是最常用的啦,以后我们会经常用到.Label控件不光有Text属性来控制它的文字,而且还有font-size等属性来控制字体大小,颜色等属性,这里的例子我都用到了,大家好好看看,相信没有什么问题

我们见过了Label控件的操作,那么我们对web控件有了一个感性的认识,在ASP.net中,一共有28个WEB控件,它们是:

AdRotator Button Calendar CheckBox
CheckBoxList CompareValidator CustomValidator DataGrid
DataList DropDownList HyperLink Image
ImageButton Label LinkButton ListBox
Panel RadioButton RadioButtonList RangeValidator
RegularExpressionValidator Repeater RequiredFieldValidator Table
TableCell TableRow TextBox ValidationSummary

大家可以到我上一节讲的那个站点去具体看一下他们各自的用法,这里我本来想主要讲一下DataGrid,DataLit,ListBox但是他们其中都需要用到Binding知识(这个我们在下一节讲),所以我们主要来看看DropDownList的用法(因为我们上一节是用的select来讲解HTML控件的)

先看一个例子:

<% @ Page Language="C#" %>
<% @ Import Namespace="System.Data" %>
<Script Language="C#" Runat="Server">
public void Page_Load(Object src,EventArgs e)
{

}
public void sub_click(Object sender,EventArgs e)
{
string chioce;
chioce=ddl.SelectedItem.Text;
show.Text="您选择的是本工作室的<font color=red>"+chioce+"</font>成员";
}
</script>
<html>
<head>
<title></title>
</head>
<body>
<form runat="server">
请选择ASPCN.Com工作室程员:<br>
<asp:DropDownList id="ddl" RunAt="server">
<asp:ListItem>飞刀</asp:ListItem>
<asp:ListItem>大风</asp:ListItem>
<asp:ListItem>Zsir</asp:ListItem>
<asp:ListItem>布丁</asp:ListItem>
<asp:ListItem>亚豪</asp:ListItem>
</asp:DropDownList>
<br>
<asp:Button id="sub" Text="提交" RunAt="Server" OnClick="sub_click" /><br>
<asp:Label id="show" runat="server"/>
</form>
</body