ASP.NET 2.0技巧

 

1、在CallBack之後保持滾動條的位置

在Asp.Net1.1中,CallBack之後保持滾動條的位置是一件非常痛苦的事情,特別是頁中有一個Grid並且想要編輯特定的行。爲了不停留在想要得行,頁面會重新加載並且必須在頂部向下滾動。在Asp2.0中,只需要簡單的在頁面的屬性中加入MaintainScrollPostionOnPostBack屬性即可:
複製ASPX代碼保存代碼<%@ Page Language="C#" MaintainScrollPositionOnPostback="true" AutoEventWireup="true" CodeFile="" Inherits="" %><%@ Page Language="C#" MaintainScrollPositionOnPostback="true" AutoEventWireup="true" CodeFile="" Inherits="" %>

2、頁面加載後設置默認焦點到控件上

這也是一個非常簡單的例子,不需要javascript的輔助即可完成。如果在頁面中有一兩個textbox,爲什麼要讓用戶去點擊textbox來開始輸入數據呢?是不是可以能夠讓光標已經停留在textbox進而可以輸入數據呢?使用HtmlForm控件的DefaultFocus屬性就可以輕易的做到:
複製ASPX代碼保存代碼<form id="frm" DefaultFocus="txtUserName" runat="server">
</form><form id="frm" DefaultFocus="txtUserName" runat="server">
</form>

3、用戶點擊“Enter”鍵時觸發默認按鈕的click實踐。

在Asp1.1中,想要使用戶點擊“Enter”鍵就能關聯到一個button的服務器段的click事件需要藉助於javascript,這是很痛苦的。幸好,現在可你使用HtmlForm控件的DefaultButton屬性來設置。這個屬性也可以設置到Panel控件上,當用戶移動到頁面中不同的Panel上,點擊enter鍵來觸發不同的button控件的click事件。
複製ASPX代碼保存代碼<form id="frm" DefaultButton="btnSubmit" runat="server">
</form><form id="frm" DefaultButton="btnSubmit" runat="server">
</form>

4、簡單的尋找固定的控件。

在頁面的控件中按層次尋找控件很痛苦,但是如果你知道控件怎樣固定在頁面中,就可以用簡寫””來查找控件而不用寫遞歸的代碼。請看下面代碼,注意””的使用:
複製ASPX代碼保存代碼<form id="form1" runat="server" DefaultFocus="formVwtxtName">
<div>
<asp:FormView ID="formVw" runat="server">
<ItemTemplate>
Name:
<asp:TextBox ID="txtName" runat="server"
Text='<%# Eval("FirstName") " " Eval("LastName") %>' />
</ItemTemplate>
</asp:FormView>
</div>
</form><form id="form1" runat="server" DefaultFocus="formVwtxtName">
<div>
<asp:FormView ID="formVw" runat="server">
<ItemTemplate>
Name:
<asp:TextBox ID="txtName" runat="server"
Text='<%# Eval("FirstName") " " Eval("LastName") %>' />
</ItemTemplate>
</asp:FormView>
</div>
</form>
這個小技巧也可以用在服務器端的 使用FindControl()函數時:
複製C#代碼保存代碼TextBox tb = this.FindControl("form1formVwtxtName") as TextBox;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章