1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

list box com scrool bar horizontal asp.net c#

Discussão em 'Web Development' iniciada por alfinete, 3 de Abril de 2009. (Respostas: 5; Visualizações: 1745)

  1. alfinete

    alfinete Power Member

    ando por aqui a tentar fazer uma listbox em c# e asp.net com scrool bar horizontal ..

    as listbox tenm de ser do tipo (<asp_kistbox>) tem de ter outopostback

    agradecia uma ajuda

    obrigada

    Código:
      <div style="Height:201px; Width:187px;overflow:-moz-scrollbars-horizontal;"  runat ="server">  
                        <asp:ListBox ID="lstbxprerequeriment" style="overflow:auto;" rows="6" runat="server" Height="201px" Width="187px"
                            AutoPostBack="True" OnSelectedIndexChanged="lstbxprerequeriment_SelectedIndexChanged">
                        </asp:ListBox>
                   </div>
    
    tenho assim mas nem a vertical aparece
     
  2. Huckleberry

    Huckleberry Power Member

    O teu problema é por teres opções com muito texto e que torna a listbox grande em largura? Em cada option usa o atributo title e aparece o tooltip se o utilizador passar com o ponteiro do rato por cima.

    Código:
    <select id="teste" style="width: 70px;" size="5" >
    <option value="1" title="Este é um texto longo">Este é um texto Longo</option>
    <option value="2" title="Este é um texto mais longo ainda">Este é um texto mais longo ainda</option>
    </select>
    
     
  3. alfinete

    alfinete Power Member

    será que não dá para fezer com scrool bar .....

    é que eu estou a puxar os dados da bd e convem ser com listbox poi precisso de fazer postback

    ....
     
  4. alfinete

    alfinete Power Member

    Código:
      <div id="Dvdisciplines" style="Height:201px; Width:187px;overflow:auto;"  runat ="server">  
                        <asp:ListBox ID="lstbxdisciplines" runat="server" AutoPostBack="True"
                            CausesValidation="True" OnSelectedIndexChanged="lstbxdisciplines_SelectedIndexChanged" Height="216px" Width="185px">
                        </asp:ListBox>
                  </div>

    assim quase eu faz mas ainda n :(
     
  5. alfinete

    alfinete Power Member

    Código:
    <div id="Dvdisciplines" style="Height:201px; Width:187px;overflow:auto;" class="lst"  runat ="server">  
                    <asp:ListBox ID="lstbxdisciplines" CssClass="lst"  runat="server" AutoPostBack="True" CausesValidation="True" Height="216px" Width="1000px">     
                          <asp:ListItem>Jose alfredo andrade rib</asp:ListItem>
                            <asp:ListItem>adadadadada</asp:ListItem>
                            <asp:ListItem>eeeeee</asp:ListItem>
                            <asp:ListItem>pedro alfredo rui joao ana susana oaulo</asp:ListItem>
                             <asp:ListItem>Jose alfredo andrade rib</asp:ListItem>
                            <asp:ListItem>adadadadada</asp:ListItem>
                            <asp:ListItem >eeeeee</asp:ListItem>
                            <asp:ListItem>pedro alfredo rui joao ana susana oaulo pedro alfredo rui joao ana susana oaulo</asp:ListItem>  
                        </asp:ListBox>
                  </div>
    
    assim ja da , mas tive de aumentar o width da lstbox para 1000px, queria um uma forma para aumentar o width dinamicamente conforme o tamanho de texto maximo de tdos os items
     
  6. alfinete

    alfinete Power Member

    uma forma de resolver o prob mas não a melhor

    code c#

    Código:
    protected void Page_Load(object sender, EventArgs e)
            {
                if (!IsPostBack)
                {
                    //Load all items in the list box.
    
                    int nItem = Convert.ToInt32(ListBox1.Items.Count * 17);
                    ListBox1.Height = nItem; //Set height depends on the font size.
                    int text = count(ListBox1);
                    ListBox1.Width = count(ListBox1)*17; //This will ensure the list item won't be shrinked!
    
                }
    
            }
    
            private int count(System.Web.UI.WebControls.ListBox lst      )
            {
                int i = 0;
                int value = 0;
    
                for (i = 0; i < lst.Items.Count; i++)
                {
                    if (value < lst.Items[i].ToString().Length)
                        value = lst.Items[i].ToString().Length;
                
                }
                return value;
            
            }
    
    code aspx
    Código:
    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="lisboxscroolhr._Default" %>
    
    <!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 runat="server">
        <title>Untitled Page</title>
    </head>
    <body>
        <form id="form1" runat="server">
       <div id="Dvdisciplines" style="Height:201px; Width:187px;overflow:auto;" class="lst"  runat ="server">  
                    <asp:ListBox ID="lstbxdisciplines" CssClass="lst"  runat="server" AutoPostBack="True" CausesValidation="True" Height="216px" Width="1000px">     
                          <asp:ListItem>Jose alfredo andrade rib</asp:ListItem>
                            <asp:ListItem>adadadadada</asp:ListItem>
                            <asp:ListItem>eeeeee</asp:ListItem>
                            <asp:ListItem>pedro alfredo rui joao ana susana oaulo</asp:ListItem>
                             <asp:ListItem>Jose alfredo andrade rib</asp:ListItem>
                            <asp:ListItem>adadadadada</asp:ListItem>
                            <asp:ListItem >eeeeee</asp:ListItem>
                            <asp:ListItem>pedro alfredo rui joao ana susana oaulo pedro alfredo rui joao ana susana oaulo</asp:ListItem>  
                        </asp:ListBox>
                  </div>
                  
                  <br />
                  <br />
                  <br />
                  <br />
                  <div id='hello' style="Z-INDEX: 102; LEFT: 13px; OVERFLOW: 
                auto; WIDTH: 247px; POSITION: relative; TOP: 62px; HEIGHT: 134px" >
                
                 <asp:ListBox ID="ListBox1" runat="server" AutoPostBack="True" CausesValidation="True">     
                          <asp:ListItem>Jose alfredo andrade rib</asp:ListItem>
                            <asp:ListItem>adadadadada</asp:ListItem>
                            <asp:ListItem>eeeeee</asp:ListItem>
                            <asp:ListItem>pedro alfredo rui joao ana susana oaulo</asp:ListItem>
                             <asp:ListItem>Jose alfredo andrade rib</asp:ListItem>
                            <asp:ListItem>adadadadada</asp:ListItem>
                            <asp:ListItem >eeeeee</asp:ListItem>
                            <asp:ListItem>pedro alfredo rui joao ana susana oaulo pedro alfredo rui joao ana susana oaulo</asp:ListItem>  
                             <asp:ListItem>pedro alfredo rui joao ana susana oaulo pedro alfredo rui joao ana susana oaulo</asp:ListItem>  
                              <asp:ListItem>pedro alfredo rui joao ana susana oaulo pedro alfredo rui joao ana susana oaulo</asp:ListItem>  
                               <asp:ListItem>pedro alfredo rui joao ana susana oaulo pedro alfredo rui joao ana susana oaulopedro alfredo rui joao ana susana oaulo pedro alfredo rui joao ana susana oaulopedro alfredo rui joao ana susana oaulo pedro alfredo rui joao ana susana oaulopedro alfredo rui joao ana susana oaulo pedro alfredo rui joao ana susana oaulopedro alfredo rui joao ana susana oaulo pedro alfredo rui joao ana susana oaulopedro alfredo rui joao ana susana oaulo pedro alfredo rui joao ana susana oaulo</asp:ListItem>  
                        </asp:ListBox>
                  </div>
                  
                </div>
        </form>
    </body>
    </html>
    
    
     

Partilhar esta Página