انجمن‌های فارس وب

نسخه کامل: آشنايي با كنترل PlaceHolder
شما در حال بازدید از بایگانی ارسال های انجمن هستید این نسخه کامل نیست : برای مشاهده نسخه کامل اینجا کلیک کنید
سلام

من خودم تازه با ابزار PlaceHolder در ASP.Net 2.0 آشنا شدم، به نظرم جالبو به درد بخور اومد
اگر مطلب اضافه اي داشتيد خوشحال مي شوم آن را به اين تاپيك اضافه كنيد.

PlaceHolder ابزاري است كه اگر بخواهيد كنترل ها يتان را به صورت Dynamic بچينيد مي توانيد از آن استفاده كنيد، به عبارتي مي توانيد چيدمان صفحه تان را با آن انجام دهيد.

اين كنترل از namespace : System.Web.UI.WebControls مي باشد.

زماني كه از اين كنترل در صفحاتتان استفاده مي كنيد ، خروجي خاصي را برايتان نمايش نمي دهد (يعني چهره گرافيكي را به صفحه تان اضافه نمي كند) بلكه تنها محفظه اي براي قرارگيري ديگر كنترل هايمان ايجاد ميكند.

فرض كنيد شما مي خواهيد جستجويي را براي صفحه وبتان طراحي كنيد و نميدانيد كه نتيجه جستجو چند سطر است ،‌ بنابراين برايتان بهتر است كه به صورت Run Time ، سطرهاي جدولتان را ايجاد كنيد.

حتي مي توانيد Label ها و يا ديگر كنترهايي كه به صورت استاتيك نيز تعريف مي شوند را در اين محفظه ها قرار دهيد.

براي تعريف اين كنترل در صفحات aspx مي توانيد از كد زير استفاده نماييد:


(زبان VB)

<%@ Page Language="VB" AutoEventWireup="True" %>

<html>

<head>

   <script runat="server">

      Sub Page_Load(Sender As Object, e As EventArgs)

         Dim myButton As HtmlButton = New HtmlButton()

         myButton.InnerText = "Button 1"
         PlaceHolder1.Controls.Add(myButton)

         myButton = New HtmlButton()
         myButton.InnerText = "Button 2"
         PlaceHolder1.Controls.Add(myButton)


      End Sub

   </script>

</head>

<body>
   <form runat="server">
      <h3>PlaceHolder Example</h3>

      <asp:PlaceHolder id="PlaceHolder1"
           runat="server"/>
   </form>
</body>
</html>





(C#)

<%@ Page Language="C#" AutoEventWireup="True" %>

<html>
<head>

   <script runat="server">

      void Page_Load(Object sender, EventArgs e)
      {
         HtmlButton myButton = new HtmlButton();

         myButton.InnerText = "Button 1";
         PlaceHolder1.Controls.Add(myButton);

         myButton = new HtmlButton();
         myButton.InnerText = "Button 2";
         PlaceHolder1.Controls.Add(myButton);

                      }

   </script>

</head>

<body>
   <form runat="server">
      <h3>PlaceHolder Example</h3>

      <asp:PlaceHolder id="PlaceHolder1"
           runat="server"/>
   </form>
</body>
</html>




توضيح كد :
با استفاده از كد بالا شما 2 تا دكمه ايجاد و در PlaceHolder قرار داريد.
توجه داشته باشيد كه براي افزودن كنترل به PlaceHolder از دستور :

PlaceHolder1.Controls.Add(ControlName);


استفاده كرده ايم.

يكي از بدردبخور ترين بخش هاي اين كنترل ايجاد Template است. كه خيلي كارآمد است.

اميدوارم شما بتونيد از اين كنترل نهايت استفاده رو ببرين . آره

منبع : MSDN

مرجع آدرس ها