HtmlForm.DefaultButton Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mendapatkan atau mengatur kontrol turunan kontrol HtmlForm yang menyebabkan postback saat tombol ENTER ditekan.
public:
property System::String ^ DefaultButton { System::String ^ get(); void set(System::String ^ value); };
public string DefaultButton { get; set; }
member this.DefaultButton : string with get, set
Public Property DefaultButton As String
Nilai Properti
Kontrol ID tombol untuk ditampilkan sebagai tombol default saat HtmlForm dimuat. Nilai default adalah string kosong ("").
Pengecualian
Kontrol yang dirujuk sebagai tombol default bukan dari jenis IButtonControl.
Contoh
Contoh berikut menunjukkan cara mengatur DefaultButton properti untuk mengatur kontrol default yang menyebabkan postback.
<%@ page language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void Page_Load(object sender, System.EventArgs e)
{
// Set the text of the two label controls.
Label1.Text = "The DefaultButton property is set to "
+ Form1.DefaultButton.ToString() + "<br/>";
Label2.Text = "The DefaultFocus property is set to "
+ Form1.DefaultFocus.ToString();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HtmlForm DefaultButton and DefaultFocus Properties Example</title>
</head>
<body>
<form id="Form1"
defaultbutton="SubmitButton"
defaultfocus="TextBox1"
runat="server">
<h3>HtmlForm DefaultButton and DefaultFocus Properties Example</h3>
TextBox1:
<asp:textbox id="TextBox1"
autopostback="true"
runat="server">
</asp:textbox>
<br />
TextBox2:
<asp:textbox id="TextBox2"
autopostback="true"
runat="server">
</asp:textbox>
<br /><br />
<asp:button id="SubmitButton"
text="Submit"
runat="server">
</asp:button>
<asp:button id="CancelButton"
text="Cancel"
runat="server">
</asp:button>
<hr />
<asp:label id="Label1"
runat="Server">
</asp:label>
<asp:label id="Label2"
runat="Server">
</asp:label>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="Server">
Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
' Set the text of the two label controls.
Label1.Text = "The DefaultButton property is set to " _
& Form1.DefaultButton.ToString & "<br/>"
Label2.Text = "The DefaultFocus property is set to " _
& Form1.DefaultFocus.ToString
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HtmlForm DefaultButton and DefaultFocus Properties Example</title>
</head>
<body>
<form id="Form1"
defaultbutton="SubmitButton"
defaultfocus="TextBox1"
runat="server">
<h3>HtmlForm DefaultButton and DefaultFocus Properties Example</h3>
TextBox1:
<asp:textbox id="TextBox1"
autopostback="true"
runat="server">
</asp:textbox>
<br />
TextBox2:
<asp:textbox id="TextBox2"
autopostback="true"
runat="server">
</asp:textbox>
<br /><br />
<asp:button id="SubmitButton"
text="Submit"
runat="server">
</asp:button>
<asp:button id="CancelButton"
text="Cancel"
runat="server">
</asp:button>
<hr />
<asp:label id="Label1"
runat="Server">
</asp:label>
<asp:label id="Label2"
runat="Server">
</asp:label>
</form>
</body>
</html>
Keterangan
Properti DefaultButton memungkinkan Anda menentukan bahwa pengguna dapat menyebabkan postback dengan menekan ENTER dalam kontrol input dalam formulir (seperti kotak teks). Anda dapat menentukan sebagai tombol default kontrol apa pun yang berasal dari IButtonControl antarmuka kecuali LinkButton kontrol. Jika kontrol yang direferensikan oleh DefaultButton properti tidak berasal dari IButtonControl, InvalidOperationException pengecualian akan dilemparkan.
Jika Anda menggunakan halaman master dan Anda mengatur DefaultButton properti dari halaman konten, gunakan UniqueID properti tombol IButtonControl . Untuk informasi selengkapnya tentang halaman master, lihat ASP.NET Halaman Master.
Properti DefaultButton mungkin tidak menyebabkan postback dalam skenario berikut:
Menekan ENTER saat fokus berada di luar kontrol input dalam formulir. Tindakan postback default tidak dijamin akan dipicu.
Menekan ENTER saat fokus berada di dalam kotak teks multibaris. Dalam kotak teks multibaris, perilaku yang diharapkan adalah menekan ENTER membuat baris baru di kotak teks. Di beberapa browser, menekan ENTER di dalam kotak teks multibaris memicu postback. Dalam hal ini, jika Anda ingin ENTER membuat baris baru, Anda dapat melampirkan fungsi JavaScript ke kontrol input. Skrip harus mengambil kunci ENTER dan menghentikan postback. Misalnya, Anda dapat menggunakan Attributes koleksi properti untuk menambahkan skrip klien untuk peristiwa tersebut
onKeyPress
.Menentukan LinkButton kontrol sebagai tombol default. Hanya Button dan ImageButton kontrol yang didukung.
Mengubah DefaultButton properti secara terprogram selama postback asinkron. Postback asinkron dapat diaktifkan di halaman dengan menambahkan satu atau beberapa UpdatePanel kontrol ke halaman. Untuk informasi selengkapnya, lihat Gambaran Umum Kontrol UpdatePanel dan Gambaran Umum Penyajian Sebagian Halaman.