Pada Halaman ini
RINGKASAN
Artikel ini selangkah demi selangkah menjelaskan cara membuat dinamis kontrol untuk halaman ASPX Web.
Contoh proyek melakukan hal berikut ini:
Contoh proyek melakukan hal berikut ini:
- Membuat dua kontrol teks .
- Verifikasi bahwa kotak teks konten (TextBox.text) dan atribut disimpan di posting ke server.
- Artikel ini menjelaskan tentang cara menangani peristiwa yang dikirim oleh kontrol yang dibuat secara dinamis.
Membuat proyek dan kontrol statis
- Pada Visual Studio .NET membuat proyek Web baru menggunakan Visual Basic .NET. Nama proyek DynamicCreate.
- Buka berkas WebForm1.aspx, dan kemudian beralih ke tampilan HTML. Masukkan kode berikut antara tag < HTML > dan < / HTML > tag:
<HEAD> <title>WebForm1</title> <meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.0"> <meta name="CODE_LANGUAGE" content="Visual Basic 7.0"> <meta name="vs_defaultClientScript" content="JavaScript"> <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5"> </HEAD> <body MS_POSITIONING="GridLayout"> <form id="Form1" method="post" runat="server"> <asp:Button id="Button1" style="Z-INDEX: 100; LEFT: 23px; POSITION: absolute; TOP: 108px" runat="server" Text="Submit" Height="27px" Width="100px"></asp:Button> <asp:Label id="Label4" style="Z-INDEX: 105; LEFT: 23px; POSITION: absolute; TOP: 197px" runat="server" Width="368px" EnableViewState="False"></asp:Label> <asp:Label id="Label3" style="Z-INDEX: 104; LEFT: 23px; POSITION: absolute; TOP: 163px" runat="server" Width="368px" EnableViewState="False"></asp:Label> <asp:Label id="Label2" style="Z-INDEX: 102; LEFT: 23px; POSITION: absolute; TOP: 60px" runat="server" Width="86px" Height="19px"> TextBox2:</asp:Label> <asp:Label id="Label1" style="Z-INDEX: 101; LEFT: 23px; POSITION: absolute; TOP: 28px" runat="server" Width="86" Height="19"> TextBox1:</asp:Label></form> </body>
- Beralih kembali ke tampilan desain untuk melihat kontrol statis dibuat yang proyek akan digunakan.
Membuat kontrol dinamis dan menghubungkan
- Pada solusi Explorer, klik Tampilkan semua berkas. Daftar berkas yang berkaitan dengan WebForm1.aspx muncul. Buka WebForm1.aspx.vb.
- Menyatakan kontrol TestBox di berkas .vb (di belakang kode). Selain itu, menyatakan variabel untuk elemen bentuk yang ada di berkas .aspx. Pemutakhiran Deklarasi yang diikuti Deklarasi WebForm1 kelas umum:
Public Class WebForm1 Inherits System.Web.UI.Page Protected WithEvents Button1 As System.Web.UI.WebControls.Button Protected WithEvents Label4 As System.Web.UI.WebControls.Label Protected WithEvents Label3 As System.Web.UI.WebControls.Label Protected WithEvents Label2 As System.Web.UI.WebControls.Label Protected WithEvents Label1 As System.Web.UI.WebControls.Label ' Added by hand for access to the form. Protected Form1 As System.Web.UI.HtmlControls.HtmlForm ' Added by hand; will create instance in OnInit. Protected WithEvents TextBox1 As System.Web.UI.WebControls.TextBox Protected WithEvents TextBox2 As System.Web.UI.WebControls.TextBox
- Menambahkan kode untuk membuat kontrol teks dinamis. Kontrol dibuat setiap kali halaman dijalankan. Tempat terbaik untuk melakukannya adalah fungsi Page_Init kelas WebForm1 yang diberikan. Temukan fungsi Page_Init . Memperluas kode yang ditandai dengan komentar "Web Form Designer dihasilkan kode." Mengubah fungsi Page_Init , sehingga mereka muncul sama dengan berikut ini:
Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init ' Create dynamic controls here. TextBox1 = New TextBox() TextBox1.ID = "TextBox1" TextBox1.Style("Position") = "Absolute" TextBox1.Style("Top") = "25px" TextBox1.Style("Left") = "100px" Form1.Controls.Add(TextBox1) TextBox2 = New TextBox() TextBox2.ID = "TextBox2" TextBox2.Style("Position") = "Absolute" TextBox2.Style("Top") = "60px" TextBox2.Style("Left") = "100px" Form1.Controls.Add(TextBox2) ' CODEGEN: The Web Form Designer requires this method call. ' Do not modify it by using the code editor. InitializeComponent() End Sub
TextBox1 = New TextBox() TextBox1.ID = "TextBox1" ' comment add command the Form Controls collection as follows ' Form1.Controls.Add(TextBox1)' Panel1.Controls.Add(TextBox1)
- Menyiapkan properti teks untuk kotak teks. Mengubah fungsi Page_Load ada:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load If Not IsPostBack Then ' Set the initial properties for the text boxes. TextBox1.Text = "TextBox1" TextBox2.Text = "TextBox2" End If End Sub
- Menyediakan handler untuk teks TextChanged peristiwa. Tambahkan kode berikut setelah fungsi Page_Load :
Private Sub TextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged, TextBox2.TextChanged Dim txtBoxSender As TextBox Dim strTextBoxID As String txtBoxSender = CType(sender, TextBox) strTextBoxID = txtBoxSender.ID Select Case strTextBoxID Case "TextBox1" Label3.Text = "TextBox1 text was changed" Case "TextBox2" Label4.Text = "TextBox2 text was changed" End Select End Sub
Simpan, pembuatan, dan kemudian jalankan sampel
Simpan, dan kemudian membuat sampel. Untuk menjalankan sampel pada Visual Studio .NET, klik kanan berkas ASPX, dan kemudian klik tampilan di Browser.Properti
ID Artikel: 317515 - Kajian Terakhir: 24 September 2011 - Revisi: 2.0
Berlaku bagi:
- Microsoft ASP.NET 1.0
- Microsoft Visual Basic .NET 2002 Standard Edition
- Microsoft ASP.NET 1.1
- Microsoft Visual Basic .NET 2003 Standard Edition
Kata kunci: | kbctrlcreate kbevent kbhowtomaster kbservercontrols kbwebforms kbmt KB317515 KbMtid |
Penerjemahan Mesin
PENTING:
Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah
Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan
artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang
diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke
seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan
(Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang
diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut
mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa,
hampir sama seperti orang asing yang berbicara dalam bahasa Anda.
Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau
kerusakan yang disebabkan karena kesalahan penerjemahan konten atau
penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui
perangkat lunak mesin penerjemah.
Klik disini untuk melihat versi Inggris dari artikel ini:317515
Tidak ada komentar:
Posting Komentar