Discuz.Control/DropDownTreeList.cs

(开头部分) 5KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System.Data;
using System.Web.UI;
using System.Web;
using System.Web.UI.WebControls;
using System.ComponentModel;

using Discuz.Common;
using Discuz.Data;

namespace Discuz.Control
{
	/// <summary>
    /// 下拉树形框控件。
	/// </summary>
	[DefaultProperty("Text"),ToolboxData("<{0}:DropDownTreeList runat=server></{0}:DropDownTreeList>")]
    public class DropDownTreeList : Discuz.Control.WebControl, IPostBackDataHandler, IPostBackEventHandler
	{
        /// <summary>
        /// 下拉列表框控件变量
        /// </summary>
		public System.Web.UI.WebControls.DropDownList TypeID=new System.Web.UI.WebControls.DropDownList();
	

        /// <summary>
        /// 构造函数
        /// </summary>
		public DropDownTreeList(): base()
		{
            this.BorderStyle = BorderStyle.Groove; 
			this.BorderWidth=1; 
		}

        /// <summary>
        /// 创建树
        /// </summary>
        /// <param name="sqlstring">查询字符串</param>
        public void BuildTree(DataTable dt,string textName,string valueName)
        {

            string SelectedType = "0";

            TypeID.SelectedValue = SelectedType;

            this.Controls.Add(TypeID);

            //DataTable dt = DbHelper.ExecuteDataset(CommandType.Text, sqlstring).Tables[0];

            TypeID.Items.Clear();
            //加载树
            TypeID.Items.Add(new ListItem("请选择     ", "0"));
            DataRow[] drs = dt.Select(this.ParentID + "=0");

            foreach (DataRow r in drs)
            {
                TypeID.Items.Add(new ListItem(r[textName].ToString(),r[valueName].ToString()));
                string blank = HttpUtility.HtmlDecode("&nbsp;&nbsp;&nbsp;&nbsp;");
                BindNode(r[valueName].ToString(), dt, blank,textName,valueName);
            }
            TypeID.DataBind();

后面还有 144 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。