Panel.ScrollBars Propriedade

Definição

Obtém ou define a visibilidade e a posição das barras de rolagem em um controle Panel.

public virtual System.Web.UI.WebControls.ScrollBars ScrollBars { get; set; }

Valor da propriedade

Um dos valores de enumeração ScrollBars. O padrão é None.

Exemplos

O exemplo de código a seguir demonstra como definir declarativamente a ScrollBars propriedade como Auto. O painel contém uma tabela, cujo conteúdo inteiro excede o tamanho do painel. Isso faz com que as barras de rolagem vertical e horizontal sejam exibidas automaticamente quando o painel é renderizado. Em seguida, o usuário pode rolar para exibir todos os dados na tabela.

Observação

O exemplo de código a seguir usa o modelo de código de arquivo único e pode não funcionar corretamente se copiado diretamente em um arquivo code-behind. Este exemplo de código deve ser copiado para um arquivo de texto vazio que tenha uma extensão de .aspx. Para obter mais informações sobre o modelo de código do Web Forms, consulte ASP.NET Web Forms Page Code Model.

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
    private void Page_Load(object sender, EventArgs e)
    {
        // Add more rows and columns to the table than can
        // be displayed in the panel area.
        // Scroll bars will be required to view all the data.

        // Add rows and columns to the table.
        for (int rowNum = 0; rowNum < 51; rowNum++)
        {
            TableRow tempRow = new TableRow();
            for (int cellNum = 0; cellNum < 11; cellNum++)
            {
                TableCell tempCell = new TableCell();
                tempCell.Text = 
                    String.Format("({0}, {1})", rowNum, cellNum);
                tempRow.Cells.Add(tempCell);
            }
            Table1.Rows.Add(tempRow);
        }
    }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head2" runat="server">
    <title>Panel Scrollbars - C# Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>

    <h3>Panel.ScrollBars Property Example</h3>        

    <asp:Panel ID="Panel1" runat="Server"
      Height="300px" Width="400px"
      BackColor="Aqua" ScrollBars="Auto">

      <asp:Table ID="Table1" runat="Server"></asp:Table>  

    </asp:Panel>         

    </div>
    </form>
</body>
</html>

O exemplo de código a seguir demonstra como definir programaticamente a ScrollBars propriedade . Um ListBox controle é preenchido com os ScrollBars valores de enumeração. As barras de rolagem exibidas no painel mudam, com base no valor que o usuário seleciona na caixa de listagem.

Observação

O exemplo de código a seguir usa o modelo de código de arquivo único e pode não funcionar corretamente se copiado diretamente em um arquivo code-behind. Este exemplo de código deve ser copiado para um arquivo de texto vazio que tenha uma extensão de .aspx. Para obter mais informações sobre o modelo de código do Web Forms, consulte ASP.NET Web Forms Page Code Model.

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
    private void Page_Load(object sender, EventArgs e)
    {
        // Add more rows and columns to the table than can
        // be displayed in the panel area.
        // Scroll bars will be required to view all the data.

        // Add rows and columns to the table.
        for (int rowNum = 0; rowNum < 51; rowNum++)
        {
            TableRow tempRow = new TableRow();
            for (int cellNum = 0; cellNum < 11; cellNum++)
            {
                TableCell tempCell = new TableCell();
                tempCell.Text = 
                    String.Format("({0}, {1})", rowNum, cellNum);
                tempRow.Cells.Add(tempCell);
            }
            Table1.Rows.Add(tempRow);
        }
    }

    private void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
    {
        // Determine which list item was clicked.
        // Display the selected scroll bars in the panel.
        switch (ListBox1.SelectedIndex)
        {
            case 0:
                Panel1.ScrollBars = ScrollBars.None;
                break;
            case 1:
                Panel1.ScrollBars = ScrollBars.Horizontal;
                break;
            case 2:
                Panel1.ScrollBars = ScrollBars.Vertical;
                break;
            case 3:
                Panel1.ScrollBars = ScrollBars.Both;
                break;
            case 4:
                Panel1.ScrollBars = ScrollBars.Auto;
                break;
            default:
                throw new Exception("Select a valid list item.");
        }
    }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head2" runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>

    <h3>Panel.ScrollBars Property Example</h3>

    <h4>Select the scrollbars to display in the panel.</h4>
    <asp:ListBox ID="ListBox1" runat="Server"
      Rows="5" AutoPostBack="True"
      SelectionMode="Single"
      OnSelectedIndexChanged="ListBox1_SelectedIndexChanged">
      <asp:ListItem>None</asp:ListItem>
      <asp:ListItem>Horizontal</asp:ListItem> 
      <asp:ListItem>Vertical</asp:ListItem>
      <asp:ListItem>Both</asp:ListItem> 
      <asp:ListItem>Auto</asp:ListItem>              
    </asp:ListBox>

    <hr />              

    <asp:Panel ID="Panel1" runat="Server"
      Height="300px" Width="400px" BackColor="Aqua">
      <asp:Table ID="Table1" runat="Server" />
    </asp:Panel>           
         
    </div>
    </form>
</body>
</html>

Comentários

Use a ScrollBars propriedade para especificar a visibilidade e a posição das barras de rolagem em um Panel controle . Essa propriedade é definida usando um dos ScrollBars valores de enumeração. A tabela a seguir lista os valores possíveis.

Valor Descrição
None Nenhuma barra de rolagem é mostrada.
Horizontal Somente uma barra de rolagem horizontal é mostrada.
Vertical Somente uma barra de rolagem vertical é mostrada.
Both As barras de rolagem horizontais e verticais são mostradas.
Auto Se necessário, as barras de rolagem horizontal, vertical ou ambas são mostradas. Caso contrário, nenhuma barra de rolagem é mostrada.

Se você especificar Auto para a propriedade , as ScrollBars barras de rolagem serão mostradas automaticamente quando o tamanho do conteúdo em um Panel controle exceder o tamanho do Panel próprio controle. Por exemplo, se um Panel controle contiver uma tabela e o painel não for largo o suficiente para exibir todas as linhas na tabela, uma barra de rolagem vertical será mostrada. Se o tamanho da tabela exceder a altura e a largura do painel, as barras de rolagem vertical e horizontal serão mostradas.

Observação

Essa propriedade tem suporte apenas em navegadores que dão suporte a HTML 4.0 ou posterior.

Aplica-se a

Produto Versões
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

Confira também