注册 登录
编程论坛 ASP.NET技术论坛

dropdownlist滚动条的问题

songgaotong 发布于 2010-12-03 10:45, 2119 次点击
只有本站会员才能查看附件,请 登录

这个下拉框完全展开的话有点长,我想让他展开后有个滚动条!但是具体怎么实现不太明白,我的用的是服务器端控件,不知道有
没有什么属性设置可以让其有滚动条,
我在网上看有人说用html标签,设置size属性,但是我试下了设置后完全都不是下拉框的样子了!我想在里面放个listbox,但是不
知道怎么写嵌套!
不知道各位朋友有没有用过这种的,有的话 给个经验,给说说到底则么整 或者给个第三方控件!谢谢了!
12 回复
#2
songgaotong2010-12-03 10:59
只有本站会员才能查看附件,请 登录

同志们要的就是这个样子
#3
wangnannan2010-12-03 11:07
DropDownList中有一个属性
MaxDropDownItem
设置成你的dropdownlist所包含的项的个数,就可以了
#4
songgaotong2010-12-03 11:10
没有这个属性啊?
#5
wangnannan2010-12-03 11:27
  <asp:DropDownList ID="ddltest" runat="server" onmouseover="javascript:this.size=8" onmouseout="javascript:this.size=1">
        </asp:DropDownList>
#6
songgaotong2010-12-03 11:38
额 不行,这个效果还真是没法说了!
#7
kevintang2010-12-03 13:06
只有本站会员才能查看附件,请 登录


5楼 说的对啊!有这种效果的啊!
我不知道你要什么 ui效果
#8
songgaotong2010-12-03 14:02
只有本站会员才能查看附件,请 登录

哎 我知道,不过你有没有发现少了点东西!感觉成一个整体了,不过还是谢谢 "wangnannan";
我想要这个样子的:
只有本站会员才能查看附件,请 登录
#9
songgaotong2010-12-03 14:09
可惜我水平太菜 下载下来没办法改,不会改!纠结!我恨
#10
saitor2010-12-03 16:26
html标签optgroup
#11
zhuohai2022010-12-03 16:39
楼主用的是别人写好的控件吧,看到你里面有两级菜单。如果没有属性设置的话,就要改这个控件的源代码。有源代码吗?
#12
songgaotong2010-12-03 16:46
后台源码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Reflection;
using System.Drawing;
using JH.Game.ServiceLibrary.Model;
using JH.Game.ServiceLibrary.Bll;
using System.Data;


public partial class Manage_Examination_Default2 : System.Web.UI.Page
{
    #region Protected method
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
           populateDdlMultiColor();
        
        }
    }

    protected void ddlMultiColor_OnSelectedIndexChanged(object sender, EventArgs e)
    {
     
    }
    #endregion
    #region private method

  
    private List<string> finalColorList()
    {

        string[] allColors = Enum.GetNames(typeof(System.Drawing.KnownColor));
        string[] systemEnvironmentColors = new string[(typeof(System.Drawing.SystemColors)).GetProperties().Length];
      

        List<string> finalColorList = new List<string>();

        foreach (string color in allColors)
        {
            if (Array.IndexOf(systemEnvironmentColors, color) < 0)
            {
                finalColorList.Add(color);
            }
        }

        return finalColorList;

    }

  


    private void populateDdlMultiColor()
    {
        ddlMultiColor.DataSource = finalColorList();
        ddlMultiColor.DataBind();
    }
    #endregion
}
前台

        <asp:DropDownList ID="ddlMultiColor" runat="server" AutoPostBack="true"
            OnSelectedIndexChanged="ddlMultiColor_OnSelectedIndexChanged">
        </asp:DropDownList>        

这个是什么也没设置,好像就是绑定数据的问题,我以绑定自己的数据,滚动条就没了!不知道是不是我的数据长度不够长
我实在不知道怎么改

这是我的数据:
 public void Bind()
    {

        DeptBll dpbll = new DeptBll();   
        DataSet ds = dpbll.GetDs();
        this.DropDownList1.DataSource = ds;     
        DropDownList1.Items.Insert(0, new ListItem("--请选择--", " "));
        DataTable dt = ds.Tables[0];
        //绑定数据到栏目列表上   
        bindtodroplist(dt, 0);
    }

    /// <summary>
    /// 页面加载绑定数据源
    /// </summary>
    public void bindtodroplist(DataTable dt, int parentid)
    {

        DataView dv = new DataView(dt);

        dv.RowFilter = " ageid= " + parentid.ToString(); //过滤  
        int layer = 0; //默认为第一层   
        foreach (DataRowView drv in dv)
        {
            layer = int.Parse(drv["deptnamejm"].ToString().Trim()); //取得第几层   
            string span = "";
            if (drv["ageid"].ToString() != "0")
            {
                for (int i = 0; i < layer; i++)
                {
                    span += " ";
                }
                span += "╴";//添加前面的空格   
            }


            ListItem li = new ListItem();
            li.Text = span + drv["deptname"].ToString();
            li.Value = drv["deptid"].ToString();
            this.DropDownList1.Items.Add(li);
            bindtodroplist(dt, Convert.ToInt32(drv["deptid"]));
        }
    }
要是能给改过来就感谢你八辈祖宗
#13
zhoufeng19882010-12-03 17:27
楼主没有小鸡鸡~
1