关于,dropdownlist在C#中的联动

在c#中,假如dropdownlist1中下拉选择中有ABC三个小区,而另一个dropdownlist2里有相对应xyz三个用户,如何实现,在dropdownlist1里... 在c#中,假如dropdownlist1中下拉选择中有ABC三个小区,而另一个dropdownlist2里有相对应x y z三个用户,
如何实现,在dropdownlist1里选择一个小区,dropdownlist2出来一个用户,例如,dropdownlist1选A,则第二个dropdownlist2可看见的是X,而y和z在 下拉选象内,
如果选择B,可见的是y,下拉里的是x和z
请教:关于2个dropdownlist的联动。
数据库a
DTRID 1 2 3
DTRNAME A B C
数据库b
STRID 11 22 33
STRNAME X Y Z
STRDTRID 1 2 3
第一级的dropdownlist的绑定数据库a,通过下拉来确定DTRNAME,而根据DTRNAME,在第二级的dropdownlist里不通过下拉即可显示相对应的数据,如,第一级选择A,则在第二级里显示X,第一级选择B,则第二级显示的就是Y了。
有谁知道怎么写吗?能有几个cs文件?
展开
 我来答
以画屏屏8748
2007-12-19 · TA获得超过7191个赞
知道大有可为答主
回答量:2581
采纳率:0%
帮助的人:3318万
展开全部
你可以在一个控件发生事件时将它的值赋给一个不可见的TEXTBOX控件,然后在初始化的时候叛断这个TEXTBOX里面有没有值,如果有的话就取它的值,没有的话就表示初始值,依此类推。 private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if(!IsPostBack)
{
SubSysId = (int)SubSysEnum.SystemManagement;
ModuleId = (int)SmModuleEnum.LogManagement;
PermissionID = SYSTEMLOG;
BTNDelete.Enabled = false;
InitUserList();
Bind();
DDLSys_SelectedIndexChanged(null,null);
DDLMou_SelectedIndexChanged(null,null);
}
}

#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}

/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.DataGrid1.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.DataGrid1_PageIndexChanged);
this.DataGrid1.SortCommand += new System.Web.UI.WebControls.DataGridSortCommandEventHandler(this.DataGrid1_SortCommand);
this.DataGrid1.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.DataGrid1_ItemDataBound);
this.DDLSys.SelectedIndexChanged += new System.EventHandler(this.DDLSys_SelectedIndexChanged);
this.DDLMou.SelectedIndexChanged += new System.EventHandler(this.DDLMou_SelectedIndexChanged);
this.BtQuery.Click += new System.EventHandler(this.BtQuery_Click);
this.BTNDelete.Click += new System.EventHandler(this.BTNDelete_Click);
this.Load += new System.EventHandler(this.Page_Load);

}
#endregion

private void InitUserList()
{
NameValueCollection userList = new AccountSystem(UserOperation).GetAllUserList();
ddlUser.Items.Clear();
ddlUser.Items.Add(new ListItem("所有", ""));
ddlUser.Items.Add(new ListItem("超级管理员", "Admin"));
foreach(string userId in userList.Keys)
ddlUser.Items.Add(new ListItem(userList[userId], userId));
ddlUser.SelectedIndex = 0;
}

private void Bind()
{
//绑定子系统列表
StringCollection textList = new StringCollection(),
valueList = new StringCollection();
LogConst.GetSubSysEnum(textList, valueList);
DDLSys.Items.Clear();
for(int I = 0; I < textList.Count; I++)
DDLSys.Items.Add(new ListItem(textList[I], valueList[I]));
DDLSys.SelectedIndex = 0;

//绑定操作类型列表
textList = new StringCollection();
valueList = new StringCollection();
LogConst.GetOperationEnum(textList,valueList);
DDLOprSort.Items.Clear();
for(int I = 0; I < textList.Count; I++)
DDLOprSort.Items.Add(new ListItem(textList[I], valueList[I]));
DDLOprSort.SelectedIndex = 0;
}

private void DDLSys_SelectedIndexChanged(object sender, System.EventArgs e)
{
if (this.DDLSys.SelectedValue.Trim()!="-1")
{
StringCollection textList = new StringCollection(),
valueList = new StringCollection();
LogConst.GetModuleEnum((SubSysEnum)Convert.ToInt32(this.DDLSys.SelectedValue.Trim()),textList, valueList);
this.DDLMou.Items.Clear();
for(int I = 0; I < textList.Count; I++)
DDLMou.Items.Add(new ListItem(textList[I], valueList[I]));
DDLMou.SelectedIndex = 0;
}
else
{
this.DDLMou.Items.Clear();
DDLMou.Items.Add(new ListItem("所有", "-1"));
DDLMou.SelectedIndex = 0;
}
}

private void DDLMou_SelectedIndexChanged(object sender, System.EventArgs e)
{
if(this.DDLMou.SelectedValue.Trim()=="-1")
{
this.DDLOpr.Items.Clear();
DDLOpr.Items.Add(new ListItem("所有", "-1"));
DDLOpr.SelectedIndex = 0;
}
else
{
//string qq=this.DDLSys.SelectedValue.Trim()+this.DDLMou.SelectedValue.Trim();
this.DDLOpr.Items.Clear();
StringCollection textList = new StringCollection(),
valueList = new StringCollection();
LogConst.GetSysModuleObjects((SmModuleEnum)Convert.ToInt32(this.DDLMou.SelectedValue.Trim()),textList, valueList);
this.DDLOpr.Items.Clear();
for(int I = 0; I < textList.Count; I++)
DDLOpr.Items.Add(new ListItem(textList[I], valueList[I]));
DDLOpr.SelectedIndex = 0;
}
}
ychs55
2007-12-19 · TA获得超过406个赞
知道小有建树答主
回答量:398
采纳率:0%
帮助的人:475万
展开全部
private void dropdownlist1_SelectedIndexChanged(object sender,EventArgs e)
{
if(this.dropdownList1.SelectedText = "A")
this.dropdownList2.SelectedText = "X";
else if(this.dropdownList1.SelectedText = "B")
this.dropdownList2.SelectedText = "Y";

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dawanyang958
2007-12-19 · 超过18用户采纳过TA的回答
知道小有建树答主
回答量:96
采纳率:0%
帮助的人:0
展开全部
数据库构建好了的话,用控件实现很简单,只要选择上一些东西就行了.
但不是无刷新的.
将相应的下拉 控件的AUTOPOSTBACK选成真直
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6f75ac8fa
2007-12-19 · TA获得超过2513个赞
知道大有可为答主
回答量:1.3万
采纳率:0%
帮助的人:4017万
展开全部
这个好象现在已经很成熟了啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式