使用ComponentArt.Web.UI的 ComboBox控件 + TreeView控件做成 用户控件 树形下拉菜单,
当在上一个页面选择过数据,到不同的页面有这个控件时还会选择相同的值,新页面设置新的数据源也没有变化,好像客户端没有刷新似的。这个如何解决,或指出问题所在。主要就是根据父级单位显示下级单位的下拉列表框下面是代码<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="XQDM_DDLT.ascx.cs" Inherits="wyzhxt.web.UserControl.XQDM_DDLT"  %><%@ Register assembly="ComponentArt.Web.UI" namespace="ComponentArt.Web.UI" tagprefix="ComponentArt" %>
        <script type="text/javascript">
      //<![CDATA[
            function TreeView1_onNodeSelect(sender, eventArgs) {
            <%=ComboBox1.ClientID %>.set_text(eventArgs.get_node().get_text());
            <%=ComboBox1.ClientID %>.collapse();
            }
      //]]>
    </script>
        <div >                <ComponentArt:ComboBox id="ComboBox1" runat="server"
          KeyboardEnabled="false"
          AutoFilter="false"
          AutoHighlight="true"
          AutoComplete="false"
          AutoTheming="true" 
          
          
          DropDownContentCssClass="dropDownContent"
          Width="300px" ClientIDMode="AutoID">
          <DropDownContent>
            <ComponentArt:TreeView id="TreeView1"  
              DragAndDropEnabled="false"
              NodeEditingEnabled="false"
              KeyboardEnabled="false"
              LineImageWidth="19"
              LineImageHeight="20"
              DefaultImageWidth="16"
              DefaultImageHeight="16"
              ItemSpacing="0"
              NodeLabelPadding="3"
              ImagesBaseUrl="/images/treeview/"
              LineImagesFolderUrl="/images/treeview/lines/"
              ParentNodeImageUrl="folders.gif"
              LeafNodeImageUrl="folder.gif"
              ShowLines="true"
              EnableViewState="True"
              AutoTheming="true" Height="100%"
              runat="server" CollapseNodeOnSelect="False" ExpandNodeOnSelect="False" ClientIDMode="Inherit">
              <ClientEvents>
                <NodeSelect EventHandler="TreeView1_onNodeSelect" />
              </ClientEvents>
            </ComponentArt:TreeView>          </DropDownContent>
        </ComponentArt:ComboBox>        </div>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using FrameWork;namespace wyzhxt.web.UserControl
{
    public partial class XQDM_DDLT : System.Web.UI.UserControl//ComponentArt.Web.UI.ComboBoxContent //System.Web.UI.UserControl
    {
        public delegate void KingDDLFormEventHandler(object sender, EventArgs e);
        public event KingDDLFormEventHandler KingDDLTSelectedIndexChanged;        protected web.UserControl.WebKingDDLT U_DDLT;
        protected web.UserControl.WebKingDDLT U_DDLT_OK = null;        BLL.Manager.DHCB02 XQDM = new BLL.Manager.DHCB02();
        BLL.Manager.DHCB01 SQDM = new BLL.Manager.DHCB01();        private static string _ParentSQDM = "";
        private static  string _SelectedValue = "";
        private static  string _Text = "";
        /// <summary>
        /// 父级单位代码
        /// </summary>
        public string ParentSQDM
        {
            get
            {
                return _ParentSQDM;
            }
            set
            {
                _ParentSQDM = value;            }
        }        /// <summary>
        /// 选择的值SelectedValue,如果设置请设置Text
        /// </summary>
        public  string SelectedValue
        {
            get
            {
                return _SelectedValue;
            }
            set
            {
                _SelectedValue = value;
                if (_SelectedValue != string.Empty)
                {
                    //TreeView1.SelectedNode = TreeView1.FindNodeById(_SelectedValue);
                    this.ComboBox1.SelectedValue = _SelectedValue;                }            }
        }
        /// <summary>
        /// 选择的值Text,如果设置请设置Text
        /// </summary>
        public string Text
        {
            get
            {
                return _Text;
            }
            set
            {
                _Text = value;
                //this.ComboBox1.Text = _Text;
            }
        }        /// <summary>
        /// AutoPostBack
        /// </summary>
        public Boolean AutoPostBack
        {
            get
            {
                return this.ComboBox1.AutoPostBack;
            }
            set
            {
                this.ComboBox1.AutoPostBack = value;
                //bindDDL(DropDownList1, _intParentID, "");
            }
        }
       
        protected void Page_Load(object sender, EventArgs e)
        {            if (!IsPostBack)
            {
                TreeView1.Nodes.Clear();
                System.Data.DataSet ds0 = new System.Data.DataSet();                //if (UserData.GetUserDate.U_Type == 0)//超级用户显示全部
                //{
                //    ParentSQDM = "";
                //}
                ds0 = SQDM.GetList(" SQ_DM like '" + ParentSQDM + "%' order by SQ_DM ");                if (ParentSQDM == "")
                {
                    ComponentArt.Web.UI.TreeViewNode nodeS = new ComponentArt.Web.UI.TreeViewNode();
                    nodeS.ID = "000";
                    nodeS.Text = "请选择小区!";
                    nodeS.Value = "";
                    nodeS.ToolTip = "";
                    TreeView1.Nodes.Add(nodeS);
                }
                for (int i = 0; i < ds0.Tables[0].Rows.Count; i++)
                {
                    ComponentArt.Web.UI.TreeViewNode node0 = new ComponentArt.Web.UI.TreeViewNode();
                    node0.ID = ds0.Tables[0].Rows[i]["SQ_DM"].ToString();
                    node0.Text = ds0.Tables[0].Rows[i]["SQ_MC"].ToString();
                    node0.Value = ds0.Tables[0].Rows[i]["SQ_DM"].ToString();
                    node0.ToolTip = "简称:" + ds0.Tables[0].Rows[i]["SQ_JC"].ToString() + " 代码:" + ds0.Tables[0].Rows[i]["SQ_DM"].ToString();
                    TreeView1.Nodes.Add(node0);
                    bindDDLT(node0.ID, node0);//载入子节点
                }                ComboBox1.Text = _Text;
                TreeView1.SelectedNode = TreeView1.FindNodeById(_SelectedValue);            }            if (TreeView1.SelectedNode != null) _SelectedValue = TreeView1.SelectedNode.Value;
            _Text = ComboBox1.Text;
        }        /// <summary>
        /// 绑定ComboBox1
        /// </summary>
        private void bindDDLT(string P_DWDM, ComponentArt.Web.UI.TreeViewNode ParentNode)
        {
            //int TotalRecord = 0;
            System.Data.DataSet ds = new System.Data.DataSet();                ds = XQDM.GetListByCache(" SQ_DM='" + P_DWDM + "' order by XQ_DM  ");                for (int i =0;i < ds.Tables[0].Rows.Count;i++ ) 
                {
                    ComponentArt.Web.UI.TreeViewNode node = new ComponentArt.Web.UI.TreeViewNode();
                    node.ID = ds.Tables[0].Rows[i]["XQ_DM"].ToString();
                    node.Text = ds.Tables[0].Rows[i]["XQ_MC"].ToString();
                    node.Value = ds.Tables[0].Rows[i]["XQ_DM"].ToString();
                    node.ToolTip = "小区代码:" + ds.Tables[0].Rows[i]["XQ_DM"].ToString();
                    //TreeView1.FindNodeById(ParentDWDM).Nodes.;
                    ParentNode.Nodes.Add(node);
                    //TreeView1.node                    //bindDDLT(DQ_CJ + 1, node.ID, node);
               }
        }
        protected void ComboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (ComboBox1.AutoPostBack) KingDDLTSelectedIndexChanged(sender, e);
        }
    }
}