有asp.net里面用了form runat=server的表单的时候,里面的
值得注意的是,如果用了masterPage(模板页),那么要在按钮ID前加上模板的ContentPlaceHolderID和一个美元符($)
相关的代码如下:
<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="tagSearch.aspx.cs" Inherits="tagSearch" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<asp:TextBox runat="server" ID="wd" ></asp:TextBox><asp:Button ID="btn" runat="server" Text="搜索" OnClick="btn_Click" />
...........................
</asp:Content>
在CS里面
protected void Page_Load(object sender, EventArgs e)
{
this.Form.DefaultButton = "ContentPlaceHolder1$btn";
}
this.Form.DefaultButton = "ContentPlaceHolder1$btn"; 這段代碼可以使用以下代碼代替: this.Form.DefaultButton = this.btn.UniqueID;
在用户自定义控件中代码为:
Parent.Page.Form.DefaultButton = this.btn.UniqueID;