当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > Web服务器控件:Panel控件

ASP.NET
asp.net Execl的添加,更新操作实现代码
asp.net 生成曲线图实现代码
从外部的js文件中获取ASPX页面的控件ClientID
asp.net 因为数据库正在使用的解决方法
asp.net Repeater 自递增
asp.net 实现防迅雷等下载工具盗链
ASP.NET封装的SQL数据库访问类
asp.net 通过指定IP地址得到当前的网络上的主机的域名
aspx 服务器架设问题解决
ASP.NET Session使用详解
Asp.net 5种页面转向方法
ASP.NET 用户多次登录的解决方法
ASP.NET下母版页和内容页中的事件发生顺序整理
asp.net 程序性能优化的七个方面 (c#(或vb.net)程序改进)
从客户端检测到有潜在危险的Request.Form值的asp.net代码
asp.net CommunityServer中的wwwStatus
在应用程序级别之外使用注册为allowDefinition=''MachineToApplication''的节是错误的
.net开发人员常犯的错误分析小结
ASP.net Substitution 页面缓存而部分不缓存的实现方法
asp.net 生成静态时的过滤viewstate的实现方法

ASP.NET 中的 Web服务器控件:Panel控件


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 109 ::
收藏到网摘: n/a

阅读此文请先查看软晨学习网的:ASP.NET入门教程:Web服务器控件,简单讲述了Web服务器控件的使用方法。

定义和用法

Panel 控件用作其它控件的容器。

提示:此控件常用于以编程方式生成控件,或显示或隐藏控件组。

注释:在 IE 中,此控件呈现为 HTML 的 <div> 元素,在 Mozilla 中呈现为 <table> 标签。

属性

属性 描述 .NET
BackImageUrl 规定显示控件背景的图像文件的 URL。 1.0
DefaultButton 规定 Panel 中默认按钮的 ID。 2.0
Direction 规定 Panel 的内容显示方向。 2.0
GroupingText 规定 Panel 中控件组的标题。 2.0
HorizontalAlign 规定内容的水平对齐方式。 1.0
runat 规定控件是服务器。必须设置为 "server"。 1.0
ScrollBars 规定 Panel 中滚动栏的位置和可见性。 2.0
Wrap 规定内容是否折行。 1.0

Web 控件标准属性

AccessKey, Attributes, BackColor, BorderColor, BorderStyle, BorderWidth,
CssClass, Enabled, Font, EnableTheming, ForeColor, Height, IsEnabled,
SkinID, Style, TabIndex, ToolTip, Width

控件标准属性

AppRelativeTemplateSourceDirectory, BindingContainer, ClientID, Controls,
EnableTheming, EnableViewState, ID, NamingContainer, Page, Parent, Site,
TemplateControl, TemplateSourceDirectory, UniqueID, Visible

语法

<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"
/>

备注:Panel 控件是其他控件的容器。它对于以编程方式生成控件以及显示和隐藏控件组尤其有用。通过设置 BackImageUrl 属性,可在 Panel 控件的背景中显示一个图像。使用 HorizontalAlignment 属性可以指定包含在该控件中的项的水平对齐方式。Wrap 属性使您可以确定当行的长度超过面板的宽度时,该控件中的项是否自动在下一行继续。

实例:

下面的示例演示如何使用 Panel 控件显示和隐藏一组控件。

下面的代码示例使用单文件代码模型,如果直接将该代码示例复制到代码隐藏文件,则可能无法正常运行。必须将此代码示例复制到扩展名为 .aspx 的空文本文件中。

Visual Basic

<%@ Page Language="VB" AutoEventWireup="True" %>
<html>
 <head>
    <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 runat=server>
       <asp:Panel id="Panel1" runat="server"
            BackColor="gainsboro"
            Height="200px"
            Width="300px">
            Panel1: Here is some static content...
            <p>
       </asp:Panel>
       <p>        
       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>
       <p>
       <asp:CheckBox id="Check1" Text="Hide Panel" runat="server"/>            
       <p>
       <asp:Button Text="Refresh Panel" runat="server"/>
    </form>
 </body>
 </html>

C#

<%@ Page Language="C#" AutoEventWireup="True" %>
<html>
 <head>
    <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 runat=server>
       <asp:Panel id="Panel1" runat="server"
            BackColor="gainsboro"
            Height="200px"
            Width="300px">
            Panel1: Here is some static content...
            <p>
       </asp:Panel>
       <p>        
       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>
       <p>
       <asp:CheckBox id="Check1" Text="Hide Panel" runat="server"/>            
       <p>
       <asp:Button Text="Refresh Panel" runat="server"/>   
    </form>
 </body>
 </html>