Condividi tramite


Sintassi dichiarativa per il controllo server Web Panel

Aggiornamento: novembre 2007

Mette a disposizione un contenitore per altri controlli. Il rendering del controllo viene eseguito sotto forma di un elemento HTML <div>.

<asp:Panel
    AccessKey="string"
    BackColor="color name|#dddddd"
    BackImageUrl="uri"
    BorderColor="color name|#dddddd"
    BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|Ridge|
        Inset|Outset"
    BorderWidth="size"
    CssClass="string"
    DefaultButton="string"
    Direction="NotSet|LeftToRight|RightToLeft"
    Enabled="True|False"
    EnableTheming="True|False"
    EnableViewState="True|False"
    Font-Bold="True|False"
    Font-Italic="True|False"
    Font-Names="string"
    Font-Overline="True|False"
    Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
        Large|X-Large|XX-Large"
    Font-Strikeout="True|False"
    Font-Underline="True|False"
    ForeColor="color name|#dddddd"
    GroupingText="string"
    Height="size"
    HorizontalAlign="NotSet|Left|Center|Right|Justify"
    ID="string"
    OnDataBinding="DataBinding event handler"
    OnDisposed="Disposed event handler"
    OnInit="Init event handler"
    OnLoad="Load event handler"
    OnPreRender="PreRender event handler"
    OnUnload="Unload event handler"
    runat="server"
    ScrollBars="None|Horizontal|Vertical|Both|Auto"
    SkinID="string"
    Style="string"
    TabIndex="integer"
    ToolTip="string"
    Visible="True|False"
    Width="size"
    Wrap="True|False"
/>

Note

Il controllo Panel è un contenitore per altri controlli, che risulta particolarmente utile per generare controlli a livello di codice e per visualizzare e nascondere gruppi di controlli. Se si imposta la proprietà BackImageUrl, è possibile visualizzare un'immagine sullo sfondo del controllo Panel. Utilizzando la proprietà HorizontalAlignment, è possibile specificare l'allineamento orizzontale degli elementi contenuti nel controllo. La proprietà Wrap consente di determinare se gli elementi nel controllo devono proseguire automaticamente nella riga successiva quando questa supera la larghezza del riquadro.

Per informazioni dettagliate sulle proprietà e sugli eventi del controllo server Web Panel, vedere la documentazione relativa alla classe Panel.

Esempio

Nell'esempio seguente viene mostrato come utilizzare un controllo Panel per visualizzare e nascondere un gruppo di controlli.

Nota

Nell'esempio di codice riportato di seguito viene utilizzato il modello di codice a file singolo e se viene copiato direttamente in un file code-behind, il codice potrebbe non funzionare. È necessario copiare l'esempio di codice in un file di testo vuoto con estensione aspx. Per ulteriori informazioni sul modello di codice di Web Form, vedere Modello di codice di pagine Web ASP.NET.

<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
 <head>
    <title>Panel Example</title>
<script runat="server">

    Sub Page_Load(sender As Object, e As EventArgs)

        ' Show or Hide the Panel contents.
        If Check1.Checked Then
            Panel1.Visible = False
        Else
            Panel1.Visible = True
        End If

        ' Generate the Label controls.
        Dim numlabels As Integer = Int32.Parse(DropDown1.SelectedItem.Value)

        Dim i As Integer
        For i = 1 To numlabels
            Dim l As New Label()
            l.Text = "Label" + i.ToString()
            l.ID = "Label" + i.ToString()
            Panel1.Controls.Add(l)
            Panel1.Controls.Add(New LiteralControl("<br />"))
        Next i

        ' Generate the Textbox controls.
        Dim numtexts As Integer = Int32.Parse(DropDown2.SelectedItem.Value)

        For i = 1 To numtexts
            Dim t As New TextBox()
            t.Text = "TextBox" & i.ToString()
            t.ID = "TextBox" & i.ToString()
            Panel1.Controls.Add(t)
            Panel1.Controls.Add(New LiteralControl("<br />"))
        Next i
    End Sub

    </script>

 </head>
 <body>

    <h3>Panel Example</h3>

    <form id="form1" runat="server">

       <asp:Panel id="Panel1" runat="server"
            BackColor="gainsboro"
            Height="200px"
            Width="300px">

            Panel1: Here is some static content...
            <br />

       </asp:Panel>

       <br />

       Generate Labels:
       <asp:DropDownList id="DropDown1" runat="server">
          <asp:ListItem Value="0">0</asp:ListItem>
          <asp:ListItem Value="1">1</asp:ListItem>
          <asp:ListItem Value="2">2</asp:ListItem>
          <asp:ListItem Value="3">3</asp:ListItem>
          <asp:ListItem Value="4">4</asp:ListItem>
       </asp:DropDownList>

       <br />

       Generate TextBoxes:
       <asp:DropDownList id="DropDown2" runat="server">
          <asp:ListItem Value="0">0</asp:ListItem>
          <asp:ListItem Value="1">1</asp:ListItem>
          <asp:ListItem Value="2">2</asp:ListItem>
          <asp:ListItem Value="3">3</asp:ListItem>
          <asp:ListItem Value="4">4</asp:ListItem>
       </asp:DropDownList>

       <br />
       <asp:CheckBox id="Check1" Text="Hide Panel" runat="server"/>

       <br />
       <asp:Button Text="Refresh Panel" runat="server"/>


    </form>

 </body>
 </html>

<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
 <head>
    <title>Panel Example</title>
<script runat="server">

       void Page_Load(Object sender, EventArgs e) {

          // Show or hide the Panel contents.

          if (Check1.Checked) {
             Panel1.Visible=false;
          }
          else {
             Panel1.Visible=true;
          }

          // Generate the Label controls.

          int numlabels = Int32.Parse(DropDown1.SelectedItem.Value);

          for (int i=1; i<=numlabels; i++) {
             Label l = new Label();
             l.Text = "Label" + (i).ToString();
             l.ID = "Label" + (i).ToString();
             Panel1.Controls.Add(l);
             Panel1.Controls.Add(new LiteralControl("<br />"));
          }

          // Generate the Textbox controls.

          int numtexts = Int32.Parse(DropDown2.SelectedItem.Value);

          for (int i=1; i<=numtexts; i++) {
             TextBox t = new TextBox();
             t.Text = "TextBox" + (i).ToString();
             t.ID = "TextBox" + (i).ToString();
             Panel1.Controls.Add(t);
             Panel1.Controls.Add(new LiteralControl("<br />"));
          }
       }

    </script>

 </head>
 <body>

    <h3>Panel Example</h3>

    <form id="form1" runat="server">

       <asp:Panel id="Panel1" runat="server"
            BackColor="gainsboro"
            Height="200px"
            Width="300px">

            Panel1: Here is some static content...
            <br />

       </asp:Panel>

       <br />

       Generate Labels:
       <asp:DropDownList id="DropDown1" runat="server">
          <asp:ListItem Value="0">0</asp:ListItem>
          <asp:ListItem Value="1">1</asp:ListItem>
          <asp:ListItem Value="2">2</asp:ListItem>
          <asp:ListItem Value="3">3</asp:ListItem>
          <asp:ListItem Value="4">4</asp:ListItem>
       </asp:DropDownList>

       <br />

       Generate TextBoxes:
       <asp:DropDownList id="DropDown2" runat="server">
          <asp:ListItem Value="0">0</asp:ListItem>
          <asp:ListItem Value="1">1</asp:ListItem>
          <asp:ListItem Value="2">2</asp:ListItem>
          <asp:ListItem Value="3">3</asp:ListItem>
          <asp:ListItem Value="4">4</asp:ListItem>
       </asp:DropDownList>

       <br />
       <asp:CheckBox id="Check1" Text="Hide Panel" runat="server"/>

       <br />
       <asp:Button Text="Refresh Panel" runat="server"/>


    </form>

 </body>
 </html>

Vedere anche

Riferimenti

Panel

Altre risorse

Sintassi dei controlli server Web