为继承masterpage的页面设置defaultbutton和defaultfocus
2008-10-23 10:05
295 查看
一个普通的aspx页面,我们可以很容易地为其设置设置defaultbutton和defaultfocus,具体如下:
.aspx:
<form id="form1" runat="server">
<div>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" Text="Button1" runat="server" OnClick="Button1_Click"></asp:Button>
<asp:Button ID="SubmitButton" Text="Submit" runat="server" OnClick="SubmitButton_Click">
</asp:Button>
</div>
</form>
.cs:
protected void Page_Load(object sender, EventArgs e)
{
this.Form.DefaultButton = SubmitButton.ID ;
this.Form.DefaultFocus = TextBox1.ID;
}
但是如果我们的页面是继承于一个masterpage的,形如:
.aspx:
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" Text="Button1" runat="server" OnClick="Button1_Click"></asp:Button>
<asp:Button ID="SubmitButton" Text="Submit" runat="server" OnClick="SubmitButton_Click">
</asp:Button>
</asp:Content>
.cs:
protected void Page_Load(object sender, EventArgs e)
{
this.Form.DefaultButton = SubmitButton.ID;
this.Form.DefaultFocus = TextBox1.ClientID;
}
在执行时就会提示出现“The DefaultButton of 'form1' must be the ID of a control of type IButtonControl. ”的异常;解决的办法是:在这个页面,用一个panel控件把textbox, button包起来,比如:
.aspx:
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
<asp:panel id="panel" runat="server">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" Text="Button1" runat="server" OnClick="Button1_Click"></asp:Button>
<asp:Button ID="SubmitButton" Text="Submit" runat="server" OnClick="SubmitButton_Click">
</asp:Button>
</asp:panel>
</asp:Content>
.cs:
protected void Page_Load(object sender, EventArgs e)
{
panel.DefaultButton = SubmitButton.ID;
this.Form.DefaultFocus = TextBox1.ClientID;
}
.aspx:
<form id="form1" runat="server">
<div>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" Text="Button1" runat="server" OnClick="Button1_Click"></asp:Button>
<asp:Button ID="SubmitButton" Text="Submit" runat="server" OnClick="SubmitButton_Click">
</asp:Button>
</div>
</form>
.cs:
protected void Page_Load(object sender, EventArgs e)
{
this.Form.DefaultButton = SubmitButton.ID ;
this.Form.DefaultFocus = TextBox1.ID;
}
但是如果我们的页面是继承于一个masterpage的,形如:
.aspx:
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" Text="Button1" runat="server" OnClick="Button1_Click"></asp:Button>
<asp:Button ID="SubmitButton" Text="Submit" runat="server" OnClick="SubmitButton_Click">
</asp:Button>
</asp:Content>
.cs:
protected void Page_Load(object sender, EventArgs e)
{
this.Form.DefaultButton = SubmitButton.ID;
this.Form.DefaultFocus = TextBox1.ClientID;
}
在执行时就会提示出现“The DefaultButton of 'form1' must be the ID of a control of type IButtonControl. ”的异常;解决的办法是:在这个页面,用一个panel控件把textbox, button包起来,比如:
.aspx:
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
<asp:panel id="panel" runat="server">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" Text="Button1" runat="server" OnClick="Button1_Click"></asp:Button>
<asp:Button ID="SubmitButton" Text="Submit" runat="server" OnClick="SubmitButton_Click">
</asp:Button>
</asp:panel>
</asp:Content>
.cs:
protected void Page_Load(object sender, EventArgs e)
{
panel.DefaultButton = SubmitButton.ID;
this.Form.DefaultFocus = TextBox1.ClientID;
}
相关文章推荐
- 为继承masterpage的页面设置defaultbutton和defaultfocus
- 为继承masterpage的页面设置defaultbutton和defaultfocus
- 设置页面的默认焦点控件和默认接受事件控件How Do I Set the DefaultFocus or DefaultButton in a Page Based on a Master Page in ASP.NET 2.0
- asp.net从masterPage继承的页面,如何在客户端用javascript取control(比如textbox)的值
- 页面级的继承public partial class Default : BasePage
- How to set the DefaultButton in a Page Based on ASP.NET Master Page
- 通过不同的masterpage给页面设置不同的样式
- 页面中设置默认的回车激活按钮, ASP.NET DefaultButton 属性
- 如何使用 MasterPage(注意母板页和子页面的执行顺序) 转载
- MFC中页面设置对话框CPageSetupDialog
- 页面包含Masterpage,UserControl(ascx)的路径问题
- C# PDF Page操作设置页面切换按钮的方法
- 继承System.Web.UI.Page的页面基类
- Load,Click Button page页面执行顺序
- 应用MasterPage后页面等待数秒后自动转向的解决!
- 母版成员(属性)如何被继承页面访问和设置
- 在ASP.NET AJAX中,由于一个ASPX页面上只能有一个ScriptManager控件,所以在有母版页的情况下,如果需要在Master-Page和Content-Page中需要引入不同的脚本时,这就需要在Content-page中使用ScriptMa
- masterpage中服务器端控件命名规则和如何用控件名取得document中的对象,用js动态设置控件事件和属性
- 继承System.Web.UI.Page的页面基类
- asp.net 继承自Page实现统一页面验证与错误处理