Apa perbedaan antara <asp:Panel >
dan <asp:PlaceHolder >
dalam ASP.NET?
Kapan sebaiknya Anda menggunakan salah satunya?
asp.net
panel
placeholder
p.campbell
sumber
sumber
Placeholder tidak memberikan tag apa pun untuk dirinya sendiri, sehingga sangat bagus untuk mengelompokkan konten tanpa overhead tag HTML luar.
Panel memang memiliki tag HTML luar tetapi memiliki beberapa sifat tambahan keren.
BackImageUrl: Mendapat / Mengatur URL gambar latar belakang untuk panel
HorizontalAlign: Mendapat / Mengatur
perataan horizontal dari konten induk
konten panel membungkus
Ada artikel bagus di startvbnet di sini .
sumber
Kontrol PlaceHolder
Gunakan kontrol PlaceHolder sebagai wadah untuk menyimpan kontrol server yang ditambahkan secara dinamis ke halaman Web. Kontrol PlaceHolder tidak menghasilkan output yang terlihat dan hanya digunakan sebagai wadah untuk kontrol lain di halaman Web. Anda bisa menggunakan
Control.Controls
koleksi untuk menambah, menyisipkan, atau menghapus kontrol di kontrol PlaceHolder.Kontrol panel
The Panel kontrol adalah wadah untuk kontrol lainnya . Ini sangat berguna ketika Anda ingin membuat kontrol secara terprogram, menyembunyikan / menampilkan sekelompok kontrol, atau melokalkan sekelompok kontrol.
The
Direction
properti berguna untuk melokalisasi konten Panel kontrol untuk menampilkan teks untuk bahasa yang ditulis dari kanan ke kiri, seperti Arab atau Ibrani.Kontrol Panel menyediakan beberapa properti yang memungkinkan Anda untuk menyesuaikan perilaku dan menampilkan kontennya. Gunakan
BackImageUr
properti l untuk menampilkan gambar khusus untuk kontrol Panel. GunakanScrollBars
properti untuk menentukan bilah gulir untuk kontrol.Perbedaan kecil saat merender HTML: kontrol PlaceHolder tidak akan menghasilkan apa pun, tetapi kontrol Panel akan merender sebagai a
<div>
.Informasi lebih lanjut di Forum ASP.NET
sumber
Saya bug * aneh di visual studio 2010, jika Anda menempatkan kontrol di dalam Placeholder tidak membuat mereka dalam mode tampilan desain.
Ini terutama berlaku untuk label Hidenfield dan Kosong.
Saya akan senang menggunakan placeholder alih-alih panel tapi saya benci kenyataan saya tidak bisa menempatkan kontrol lain di dalam placeholder pada waktu desain di GUI.
sumber
Seperti disebutkan dalam jawaban lain, Panel menghasilkan
<div>
dalam HTML, sedangkan PlaceHolder tidak. Tetapi ada lebih banyak alasan mengapa Anda bisa memilih salah satu.Mengapa PlaceHolder?
Karena tidak menghasilkan tag sendiri, Anda dapat menggunakannya dengan aman di dalam elemen lain yang tidak dapat berisi
<div>
, misalnya:Anda juga dapat menggunakan PlaceHolder untuk mengontrol Visibilitas sekelompok Kontrol tanpa membungkusnya dengan a
<div>
Mengapa sebuah Panel
Ini menghasilkan sendiri
<div>
dan juga dapat digunakan untuk membungkus sekelompok Contols. Tetapi Panel memiliki lebih banyak properti yang dapat berguna untuk memformat kontennya:Tetapi fitur yang paling berguna adalah
DefaultButton
properti. Ketika ID cocok dengan Tombol di Panel itu akan memicu Form Post dengan Validasi ketikaenter
ditekan di dalam TextBox. Sekarang pengguna dapat mengirimkan Formulir tanpa menekan tombol.Coba cuplikan di atas dengan menekan
enter
di dalamTextBox1
sumber