Mittels
<form id="form1" runat="server" defaultbutton="Button1">
kann man in ASP.NET 2.0 relativ einfach einen Default-Button (der Button, der durch Drücken der Return-Taste ausgelöst wird) für das aktuelle Formular definieren.
Allerdings funktioniert dies nur, wenn man nicht mit MasterPages arbeitet, d.h. den Default-Button nicht in einer Content-Seite (z.B. Default.aspx, welche auf die MasterPage verweist) definieren will.
Ähnlich gestaltet sich die Problematik bei Web User Controls. Entweder wird einfach der verkehrte Button ausgewählt, oder man erhält die Fehlermeldung:
The DefaultButton of 'form1' must be the ID of a control of type IButtonControl
Abhilfe kann man allerdings leicht mit ASP.NET 2.0 Bordmitteln schaffen, indem man ein ASP.NET Panel um den gewünschten Default-Button (+ den Controls, die den Button auslösen sollen, also z.B. TextBoxen etc.) setzt:
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
<asp:Panel ID="Panel1" runat="server" DefaultButton="Button1" Height="50px" Width="125px">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
</asp:Panel>
</asp:Content>
Wie man sieht, besitzt das ASP.NET Panel ebenfalls eine Eigenschaft DefaultButton über die man einen seitenweit geltenden Default-Button deklarieren kann.