⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 webformssyntaxref.aspx

📁 书籍教程 >> .Net教程 >> asp.net编程精彩百例
💻 ASPX
📖 第 1 页 / 共 2 页
字号:
<%@ Register TagPrefix="Acme" Namespace="Acme" Assembly="QSTools" %>
<%@ Register TagPrefix="Acme" TagName="SourceRef" Src="/quickstart/aspplus/util/SrcRef.ascx"%>

<!-- #include virtual="/quickstart/aspplus/include/header.inc" -->

<h4>Web 窗体语法参考</h4>
<p>

<div class="indent" style="font-family:Verdana; font-size:8pt;">
    <b> <img align="middle" src="/quickstart/images/bullet.gif">&nbsp;&nbsp;</b><a class="toc2" href="#syntax">ASP.NET Web 窗体语法元素</a><br>
    <b> <img align="middle" src="/quickstart/images/bullet.gif">&nbsp;&nbsp;</b><a class="toc2" href="#render">呈现代码语法</a><br>
    <b> <img align="middle" src="/quickstart/images/bullet.gif">&nbsp;&nbsp;</b><a class="toc2" href="#code">声明代码语法</a><br>
    <b> <img align="middle" src="/quickstart/images/bullet.gif">&nbsp;&nbsp;</b><a class="toc2" href="#ctrl">ASP.NET 服务器控件语法</a><br>
    <b> <img align="middle" src="/quickstart/images/bullet.gif">&nbsp;&nbsp;</b><a class="toc2" href="#htmlctrl">ASP.NET Html 服务器控件语法</a><br>
    <b> <img align="middle" src="/quickstart/images/bullet.gif">&nbsp;&nbsp;</b><a class="toc2" href="#databind">数据绑定语法</a><br>
    <b> <img align="middle" src="/quickstart/images/bullet.gif">&nbsp;&nbsp;</b><a class="toc2" href="#object">对象标记语法</a><br>
    <b> <img align="middle" src="/quickstart/images/bullet.gif">&nbsp;&nbsp;</b><a class="toc2" href="#comment">服务器端注释语法</a><br>
    <b> <img align="middle" src="/quickstart/images/bullet.gif">&nbsp;&nbsp;</b><a class="toc2" href="#include">服务器端包含语法</a><br>
</div>
<p>
<hr>

<!--BEGIN SECTION--> <a name="syntax"><span class="subhead">ASP.NET Web 窗体语法元素</span>
<p>

ASP.NET Web 窗体页是带 .aspx 文件扩展名的声明性文本文件。除静态内容外,还可以使用八个独特的语法标记元素。本“入门”节复习这些语法元素中的每一个并提供示例说明它们的用法。


<!--BEGIN SECTION--> <br> <a name="render"><br> <span class="subhead">呈现代码语法:&lt;% %&gt; 和 &lt;%= %&gt;</span>
<p>

代码呈现块由 &lt;% ...%&gt; 元素表示,允许自定义控件内容显示,并且在 Web 窗体页执行的呈现阶段执行。下面的示例说明可以如何使用它们在 HTML 内容上循环。

<p><Acme:TabControl runat="server">

<Tab Name="C#">
&lt;% for (int i=0; i<8; i++) { %&gt;
     &lt;font size="&lt;%=i%&gt;"&gt; Hello World! &lt;/font&gt; &lt;br&gt;
&lt;% } %&gt;
</Tab>

<Tab Name="VB">
&lt;% For I=0 To 7 %&gt;
     &lt;font size="&lt;%=i%&gt;"&gt; Hello World! &lt;/font&gt; &lt;br&gt;
&lt;% Next %&gt;
</Tab>

<Tab Name="JScript">
&lt;% for (var i:int=0; i<8; i++) { %&gt;
     &lt;font size="&lt;%=i%&gt;"&gt; Hello World! &lt;/font&gt; &lt;br&gt;
&lt;% } %&gt;
</Tab>

</Acme:TabControl><p>



<Acme:LangSwitch runat="server">
  <CsTemplate>
<Acme:SourceRef
  RunSample="/quickstart/aspplus/samples/webforms/reference/CS/reference1.aspx"
  ViewSource="/quickstart/aspplus/samples/webforms/reference/reference1.src"
  Icon="/quickstart/aspplus/images/reference1.gif"
  Caption="C# Reference1.aspx"
  runat="server" />
  </CsTemplate>
  <VbTemplate>
<Acme:SourceRef
  RunSample="/quickstart/aspplus/samples/webforms/reference/VB/reference1.aspx"
  ViewSource="/quickstart/aspplus/samples/webforms/reference/reference1.src"
  Icon="/quickstart/aspplus/images/reference1.gif"
  Caption="VB Reference1.aspx"
  runat="server" />
  </VbTemplate>
  <JsTemplate>
<Acme:SourceRef
  RunSample="/quickstart/aspplus/samples/webforms/reference/JS/reference1.aspx"
  ViewSource="/quickstart/aspplus/samples/webforms/reference/reference1.src"
  Icon="/quickstart/aspplus/images/reference1.gif"
  Caption="JScript Reference1.aspx"
  runat="server" />
  </JsTemplate>
</Acme:LangSwitch>

<p>
只执行由 &lt;% ...%&gt; 括起来的代码,但计算包含等号的表达式(&lt;%= ...%&gt;),并将结果显示为内容。因此,<code><nobr>&lt;%=&quot;Hello World&quot; %&gt;</nobr></code> 呈现与 C# 代码 <code><nobr>&lt;% Response.Write(&quot;Hello World&quot;); %&gt;</nobr></code> 相同的内容。
<p>
<b>注意:</b>对于使用标记结束或分隔语句的语言(如 C# 中的分号 (;)),根据代码的呈现方式正确放置那些标记很重要。
<p>
<div class="indent">
<table class="table2" cellpadding=3>
<tr><th colspan="2"><b>C# code</b></th></tr>
<tr>
  <td><div class="code">&lt;% Response.Write("Hello World"); %&gt;</div></td>
  <td>A semicolon is necessary to end the statement.</td></tr>
<tr>
  <td><div class="code">&lt;%="Hello World"; %&gt;</div></td>
  <td>Wrong: Would result in "<code>Response.Write("Hello World";);</code>".</td></tr>
<tr>
  <td><div class="code">&lt;%="Hello World" %&gt;</div></td><td>A semicolon is not necessary.</td></tr>
</table>
</div>

<!--BEGIN SECTION--> <br> <a name="code"><br> <span class="subhead">声明代码语法:&lt;script runat=&quot;server&quot;&gt; </span>
<p>

代码声明块定义将编译为生成的 <b>Page</b> 类的成员变量和方法。这些块可用于创作页/导航逻辑。下面的示例说明可以如何在 <b>&lt;script runat=&quot;server&quot;&gt;</b> 块内声明 <b>Subtract</b> 方法,然后如何从页中调用此方法。

<p><Acme:TabControl runat="server">
<Tab Name="C#">
&lt;script language="C#" runat=server&gt;
int subtract(int num1, int num2) {
  return num1 - num2;
}
&lt;/script&gt;

&lt;%
  ...
  number = subtract(number, 1);
  ...
%&gt;
</Tab>

<Tab Name="VB">
&lt;script language="VB" runat=server&gt;
Function Subtract(num1 As Integer, num2 As Integer) As Integer
  Return(num1 - num2)
End Function
&lt;/script&gt;

&lt;%
  ...
  number = subtract(number, 1)
  ...
%&gt;
</Tab>

<Tab Name="JScript">
&lt;script language="JScript" runat=server&gt;
function subtract(num1:int, num2:int) : int {
  return num1 - num2;
}
&lt;/script&gt;

&lt;%
  ...
  number = subtract(number, 1);
  ...
%&gt;
</Tab>

</Acme:TabControl><p>

<p>

<Acme:LangSwitch runat="server">
  <CsTemplate>
<Acme:SourceRef
  RunSample="/quickstart/aspplus/samples/webforms/reference/CS/reference2.aspx"
  ViewSource="/quickstart/aspplus/samples/webforms/reference/reference2.src"
  Icon="/quickstart/aspplus/images/reference2.gif"
  Caption="C# Reference2.aspx"
  runat="server" />
  </CsTemplate>
  <VbTemplate>
<Acme:SourceRef
  RunSample="/quickstart/aspplus/samples/webforms/reference/VB/reference2.aspx"
  ViewSource="/quickstart/aspplus/samples/webforms/reference/reference2.src"
  Icon="/quickstart/aspplus/images/reference2.gif"
  Caption="VB Reference2.aspx"
  runat="server" />
  </VbTemplate>
  <JsTemplate>
<Acme:SourceRef
  RunSample="/quickstart/aspplus/samples/webforms/reference/JS/reference2.aspx"
  ViewSource="/quickstart/aspplus/samples/webforms/reference/reference2.src"
  Icon="/quickstart/aspplus/images/reference2.gif"
  Caption="JScript Reference2.aspx"
  runat="server" />
  </JsTemplate>
</Acme:LangSwitch>

<p>

<b>重要说明:</b>与 ASP 不同(在 ASP 中,函数可以在 &lt;% %&gt; 块中声明),所有的函数和全局页变量都必须在 <b>&lt;script runat=server&gt;</b> 标记中声明。在 &lt;% %&gt; 块内声明的函数现在将生成语法编译错误。



<!--BEGIN SECTION--> <br> <a name="ctrl"><br> <span class="subhead">ASP.NET 服务器控件语法</span>
<p>

自定义 ASP.NET 服务器控件使页开发人员能够动态生成 HTML 用户界面 (UI) 并响应客户端请求。这些控件在文件内用基于标记的声明语法表示。这些标记不同于其他标记,因为它们包含<b>“runat=server”</b>属性。下面的示例说明可以如何在 ASP.NET 页内使用 <b>&lt;asp:label runat=&quot;server&quot;&gt;</b> 服务器控件。该控件与 <b><nobr>System.Web.UI.WebControls</nobr></b> 命名空间中的 <b>Label</b> 类相对应,默认情况下包括该命名空间。
<p>
通过添加 ID 为“Message”的标记,在运行时创建 <b>Label</b> 的实例:

<div class="code"><pre>
&lt;asp:label id="Message" font-size=24 runat="server"/&gt;
</pre></div>

然后可用同一名称访问此控件。下面的代码行设置此控件的 <b>Text</b> 属性。

<p><Acme:TabControl runat="server">
<Tab Name="C#">
Message.Text = "Welcome to ASP.NET";
</Tab>

<Tab Name="VB">
Message.Text = "Welcome to ASP.NET"
</Tab>

<Tab Name="JScript">
Message.Text = "Welcome to ASP.NET";
</Tab>

</Acme:TabControl><p>

<Acme:LangSwitch runat="server">
  <CsTemplate>
<Acme:SourceRef
  RunSample="/quickstart/aspplus/samples/webforms/reference/CS/reference3.aspx"
  ViewSource="/quickstart/aspplus/samples/webforms/reference/reference3.src"
  Icon="/quickstart/aspplus/images/reference3.gif"
  Caption="C# Reference3.aspx"
  runat="server" />
  </CsTemplate>
  <VbTemplate>
<Acme:SourceRef
  RunSample="/quickstart/aspplus/samples/webforms/reference/VB/reference3.aspx"
  ViewSource="/quickstart/aspplus/samples/webforms/reference/reference3.src"
  Icon="/quickstart/aspplus/images/reference3.gif"
  Caption="VB Reference3.aspx"
  runat="server" />
  </VbTemplate>
  <JsTemplate>
<Acme:SourceRef
  RunSample="/quickstart/aspplus/samples/webforms/reference/JS/reference3.aspx"
  ViewSource="/quickstart/aspplus/samples/webforms/reference/reference3.src"
  Icon="/quickstart/aspplus/images/reference3.gif"
  Caption="JScript Reference3.aspx"
  runat="server" />
  </JsTemplate>
</Acme:LangSwitch>



<!--BEGIN SECTION--> <br> <a name="htmlctrl"><br> <span class="subhead">ASP.NET HTML 服务器控件语法 </span>
<p>

HTML 服务器控件使页开发人员能够以编程方式操作页内的 HTML 元素。HTML 服务器控件标记因<b>“runat=server”</b>属性而不同于客户端 HTML 元素。下面的示例说明可以如何在 ASP.NET 页内使用 HTML <b>&lt;span runat=server&gt;</b> 服务器控件。
<p>
与其他服务器控件一样,也能以编程方式访问方法和属性,如下例所示。

<p><Acme:TabControl runat="server">
<Tab Name="C#">
&lt;script language="C#" runat="server"&gt;
  void Page_Load(Object sender, EventArgs e) {
    Message.InnerHtml = "Welcome to ASP.NET";
  }
&lt;/script&gt;
...
&lt;span id="Message" style="font-size:24" runat="server"/&gt;
</Tab>

<Tab Name="VB">
&lt;script language="VB" runat="server"&gt;
  Sub Page_Load(sender As Object, e As EventArgs)
    Message.InnerHtml = "Welcome to ASP.NET"
  End Sub
&lt;/script&gt;
...
&lt;span id="Message" style="font-size:24" runat="server"/&gt;
</Tab>

<Tab Name="JScript">
&lt;script language="JScript" runat="server"&gt;
  function Page_Load(sender:Object, e:EventArgs) : void {
    Message.InnerHtml = "Welcome to ASP.NET";
  }
&lt;/script&gt;
...
&lt;span id="Message" style="font-size:24" runat="server"/&gt;
</Tab>

</Acme:TabControl><p>

<Acme:LangSwitch runat="server">
  <CsTemplate>
<Acme:SourceRef
  RunSample="/quickstart/aspplus/samples/webforms/reference/CS/reference4.aspx"
  ViewSource="/quickstart/aspplus/samples/webforms/reference/reference4.src"
  Icon="/quickstart/aspplus/images/reference4.gif"

⌨️ 快捷键说明

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