100165681.htm

来自「C#高级编程(第三版),顶死你们。。 。up」· HTM 代码 · 共 952 行 · 第 1/5 页

HTM
952
字号
<p class=a6 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;</span></p>

<p class=a6 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&lt;form id=&quot;Form1&quot; method=&quot;post&quot;
Runat=&quot;server&quot;&gt;</span></p>

<p class=2 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&lt;asp:Label Runat=&quot;server&quot;
ID=&quot;resultLabel&quot;/&gt;&lt;br&gt;</span></p>

<p class=2 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&lt;asp:Button Runat=&quot;server&quot; ID=&quot;triggerButton&quot;
Text=&quot;Click Me&quot;/&gt;</span></p>

<p class=a6 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&lt;/form&gt;</span></p>

<p class=a6 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;
&lt;/body&gt;</span></p>

<p class=a6 style='margin-top:0cm;margin-right:0cm;FTEL:8.15pt;
margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&lt;/html&gt;</span></p>

<p class=MsoNormal><span style='font-family:宋体'>这里添加了两个</span><span lang=EN-US>Web</span><span
style='font-family:宋体'>窗体控件:标签和按钮。</span></p>

<p class=MsoNormal><span style='font-family:宋体'>回过头来看看设计屏幕,其中已经添加了控件,并用它们的</span><span
lang=EN-US>ID</span><span style='font-family:宋体'>属性命名。与</span><span lang=EN-US>Windows</span><span
style='font-family:宋体'>窗体一样,可以通过</span><span lang=EN-US>Properties</span><span
style='font-family:宋体'>窗口访问所有的属性、事件等,如果进行了修改,代码或设计会立即进行反馈。</span></p>

<p class=MsoNormal><span style='font-family:宋体'>接着,查看一下</span><span lang=EN-US>WebForm1.aspx.cs</span><span
style='font-family:宋体'>。下面两个成员添加到</span><span lang=EN-US>WebForm1</span><span
style='font-family:宋体'>类中:</span></p>

<p class=2 style='margin-top:8.15pt;margin-right:0cm;FTEL:0cm;
margin-left:21.45pt;FTEL:.0001pt;FTEL:18.45pt'><span
lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; protected
System.Web.UI.WebControls.Button triggerButton;</span></p>

<p class=2 style='margin-top:0cm;margin-right:0cm;FTEL:8.15pt;
margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;protected
System.Web.UI.WebControls.Label resultLabel;</span></p>

<p class=MsoNormal><span style='font-family:宋体'>我们添加的所有服务器控件都会自动成为对象模型的一部分,该对象模型是在这段后置代码中为窗体构建的。</span><span
lang=EN-US>Windows</span><span style='font-family:宋体'>窗体开发人员可以即时得到这个对象模型,并开始认识到它与</span><span
lang=EN-US>Windows</span><span style='font-family:宋体'>窗体的类似性。</span></p>

<p class=MsoNormal><span style='font-family:宋体'>要让这个应用程序完成一些工作,应添加单击按钮的事件处理程序。可以在</span><span
lang=EN-US>Properties</span><span style='font-family:宋体'>窗口中为按钮输入一个方法名,也可以双击该按钮,得到默认的事件处理程序。如果双击按钮,就可以自动添加一个事件处理方法:</span></p>

<p class=2 style='margin-top:8.15pt;margin-right:0cm;FTEL:0cm;
margin-left:21.45pt;FTEL:.0001pt;FTEL:18.45pt'><span
lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; private void triggerButton</span><span
lang=EN-US style='font-family:"Baskerville BE Regular"'>_</span><span
lang=EN-US>Click(object sender, System.EventArgs e)</span></p>

<p class=2 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
{</span></p>

<p class=2 style='margin-top:0cm;margin-right:0cm;FTEL:8.15pt;
margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
}</span></p>

<p class=MsoNormal><span style='font-family:宋体'>把一些代码添加到</span><span
lang=EN-US>InitializeComponent()</span><span style='font-family:宋体'>中,就可以把事件处理程序链接到按钮上:</span></p>

<p class=a6 style='margin-top:8.15pt;margin-right:0cm;FTEL:0cm;
margin-left:21.45pt;FTEL:.0001pt;FTEL:18.45pt'><span
lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; private void InitializeComponent()</span></p>

<p class=a6 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
{</span></p>

<p class=2 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
this.triggerButton.Click +=</span></p>

<p class=2 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
new System.EventHandler(this.triggerButton</span><span lang=EN-US
style='font-family:"Baskerville BE Regular"'>_</span><span lang=EN-US>Click);</span></p>

<p class=a6 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
this.Load += new System.EventHandler(this.Page</span><span lang=EN-US
style='font-family:"Baskerville BE Regular"'>_</span><span lang=EN-US>Load);</span></p>

<p class=a6 style='margin-top:0cm;margin-right:0cm;FTEL:8.15pt;
margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
}</span></p>

<p class=MsoNormal><span style='font-family:宋体'>修改</span><span lang=EN-US>triggerButton_Click()</span><span
style='font-family:宋体'>中的代码:</span></p>

<p class=a6 style='margin-top:8.15pt;margin-right:0cm;FTEL:0cm;
margin-left:21.45pt;FTEL:.0001pt;FTEL:18.45pt'><span
lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; protected void triggerButton</span><span
lang=EN-US style='font-family:"Baskerville BE Regular"'>_</span><span
lang=EN-US>Click(object sender, System.EventArgs e)</span></p>

<p class=a6 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
{</span></p>

<p class=2 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
resultLabel.Text = &quot;Button clicked!&quot;;</span></p>

<p class=a6 style='margin-top:0cm;margin-right:0cm;FTEL:8.15pt;
margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
}</span></p>

<p class=MsoNormal><span style='font-family:宋体'>下面准备运行它。在</span><span
lang=EN-US>VS.NET</span><span style='font-family:宋体'>中以正常方式建立应用程序,编译所有的文件,并把它们放在</span><span
lang=EN-US>Web</span><span style='font-family:宋体'>服务器上,以备使用。测试这个</span><span
lang=EN-US>Web</span><span style='font-family:宋体'>应用程序时,可以运行它</span><span
lang=EN-US>(</span><span style='font-family:宋体'>充分利用</span><span lang=EN-US>VS.NET</span><span
style='font-family:宋体'>调试功能</span><span lang=EN-US>)</span><span
style='font-family:宋体'>,或者在</span><span lang=EN-US>http://localhost/PCSWebApp1/WebForm1.aspx</span><span
style='font-family:宋体'>上打开一个浏览器,这两种方式都会在</span><span lang=EN-US>Web</span><span
style='font-family:宋体'>页面上显示一个</span><span lang=EN-US>Click Me</span><span
style='font-family:宋体'>按钮。在单击这个按钮前,使用</span><span lang=EN-US>View | Source (</span><span
style='font-family:宋体'>在</span><span lang=EN-US>IE</span><span
style='font-family:宋体'>中</span><span lang=EN-US>)</span><span style='font-family:
宋体'>快速查看一下浏览器接收到的代码。</span><span lang=EN-US>&lt;form&gt;</span><span
style='font-family:宋体'>部分应如下所示:</span></p>

<p class=2 style='margin-top:8.15pt;margin-right:0cm;FTEL:0cm;
margin-left:21.45pt;FTEL:.0001pt;FTEL:18.45pt'><span
lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;form FTEL=&quot;Form1&quot;
method=&quot;post&quot; action=&quot;WebForm1.aspx&quot;
id=&quot;Form1&quot;&gt;</span></p>

<p class=2 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&lt;input type=&quot;hidden&quot; FTEL=&quot;</span><span lang=EN-US
style='font-family:"Baskerville BE Regular"'>__</span><span lang=EN-US>VIEWSTATE&quot;
value=&quot;dDwtOTk1MjE0NDA4Ozs+&quot; /&gt;</span></p>

<p class=2 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&lt;span id=&quot;resultLabel&quot;&gt;&lt;/span&gt;&lt;br&gt;</span></p>

<p class=2 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&lt;input type=&quot;submit&quot; FTEL=&quot;triggerButton&quot;
value=&quot;Click Me&quot;</span></p>

<p class=2 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
id=&quot;triggerButton&quot; /&gt;</span></p>

<p class=2 style='margin-top:0cm;margin-right:0cm;FTEL:8.15pt;
margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&lt;/form&gt;</span></p>

<p class=MsoNormal><span lang=EN-US>Web</span><span style='font-family:宋体'>服务器控件生成了</span><span
lang=EN-US>HTML</span><span style='font-family:宋体'>,</span><span lang=EN-US>&lt;span&gt;</span><span
style='font-family:宋体'>和</span><span lang=EN-US>&lt;input&gt;</span><span
style='font-family:宋体'>分别代表</span><span lang=EN-US>&lt;asp:Label&gt;</span><span
style='font-family:宋体'>和</span><span lang=EN-US>&lt;asp:Button&gt;</span><span
style='font-family:宋体'>。还有一个名为</span><span lang=EN-US>__VIEWSTATE</span><span
style='font-family:宋体'>的</span><span lang=EN-US>&lt;input type=''hidden''&gt;</span><span
style='font-family:宋体'>字段,把前面提到的窗体状态封装起来。在窗体传送回服务器以重新创建</span><span lang=EN-US>UI</span><span
style='font-family:宋体'>,同时跟踪改变时使用这些信息。注意</span><span lang=EN-US>&lt;form&gt;</span><span
style='font-family:宋体'>元素已经进行了配置,通过</span><span lang=EN-US>HTTP POST</span><span
style='font-family:宋体'>操作</span><span lang=EN-US>(</span><span
style='font-family:宋体'>在</span><span lang=EN-US>method</span><span
style='font-family:宋体'>中指定</span><span lang=EN-US>)</span><span
style='font-family:宋体'>把数据传送回</span><span lang=EN-US>WebForm1.aspx(</span><span
style='font-family:宋体'>在</span><span lang=EN-US>action</span><span
style='font-family:宋体'>中指定</span><span lang=EN-US>)</span><span
style='font-family:宋体'>,它还被赋予了一个名称</span><span lang=EN-US>Form1</span><span
style='font-family:宋体'>。</span></p>

<p class=MsoNormal><span style='font-family:宋体'>在单击按钮,查看文本后,可再次浏览源</span><span
lang=EN-US>HTML(</span><span style='font-family:宋体'>下面添加了必要的空格,使代码比较清晰</span><span
lang=EN-US>)</span><span style='font-family:宋体'>:</span></p>

<p class=2 style='margin-top:8.15pt;margin-right:0cm;FTEL:0cm;
margin-left:21.45pt;FTEL:.0001pt;FTEL:18.45pt'><span
lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;form FTEL=&quot;Form1&quot;
method=&quot;post&quot; action=&quot;WebForm1.aspx&quot;
id=&quot;Form1&quot;&gt;</span></p>

<p class=2 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&lt;input type=&quot;hidden&quot; FTEL=&quot;</span><span lang=EN-US
style='font-family:"Baskerville BE Regular"'>__</span><span lang=EN-US>VIEWSTATE&quot;</span></p>

<p class=2 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
value=&quot;dDwtOTk1MjE0NDA4O3Q8O2w8aTwxPjs+O2w8dDw7bDxpPDE+Oz47bD</span></p>

<p class=2 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
x0PHA8cDxsPFRleHQ7PjtsPEJ1dHRvbiBjbGlja2VkITs+Pjs+Ozs+</span></p>

<p class=2 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Oz4+Oz4+Oz4=&quot; /&gt;</span></p>

<p class=2 style='margin-left:21.45pt;FTEL:18.45pt'><span lang=EN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?