C# dropdownlist获取他人的价值
我的页面上有两个下拉列表,ddlMin和ddlMax 在页面加载时,我让它选择request.querystring的值。调试时,它将获取所选值,直到到达下一行,然后获取所选值 我已经检查了.cs.designer,以确保它没有继承一些愚蠢的东西,但看起来一切正常C# dropdownlist获取他人的价值,c#,asp.net,drop-down-menu,query-string,C#,Asp.net,Drop Down Menu,Query String,我的页面上有两个下拉列表,ddlMin和ddlMax 在页面加载时,我让它选择request.querystring的值。调试时,它将获取所选值,直到到达下一行,然后获取所选值 我已经检查了.cs.designer,以确保它没有继承一些愚蠢的东西,但看起来一切正常 提前为帮助干杯 在创建我的dropdownlist时,我是这样创建我的项目的 foreach (string item in ConfigurationManager.AppSettings["Budget"]
提前为帮助干杯 在创建我的dropdownlist时,我是这样创建我的项目的
foreach (string item in ConfigurationManager.AppSettings["Budget"].Split(','))
{
items = item.ToLower() == "any"
? new ListItem(item, "0")
: item.Contains("+")
? new ListItem(String.Format("{0:0,0}+", Convert.ToInt32(item.Replace("+", ""))),
"999999999")
: new ListItem(String.Format("{0:0,0}", Convert.ToInt32(item)), item);
ddlMin.Items.Add(items);
ddlMax.Items.Add(items);
}
这意味着,尽管我不清楚为什么它会有这么大的影响,但listitem是作为一个单数项附加到两个DropDownList的。因此,即使ddlMin得到了正确的值并在ddlMax返回为0时选择了它,它也会在两个列表中选择相同的listitem。。。为了解决这个问题,您只需将添加到ddlMin和ddlMax的操作分开
foreach (string item in ConfigurationManager.AppSettings["Budget"].Split(','))
{
items = item.ToLower() == "any"
? new ListItem(item, "0")
: item.Contains("+")
? new ListItem(String.Format("{0:0,0}+", Convert.ToInt32(item.Replace("+", ""))),
"999999999")
: new ListItem(String.Format("{0:0,0}", Convert.ToInt32(item)), item);
ddlMin.Items.Add(items);
}
foreach (string item in ConfigurationManager.AppSettings["Budget"].Split(','))
{
items = item.ToLower() == "any"
? new ListItem(item, "0")
: item.Contains("+")
? new ListItem(String.Format("{0:0,0}+", Convert.ToInt32(item.Replace("+", ""))),
"999999999")
: new ListItem(String.Format("{0:0,0}", Convert.ToInt32(item)), item);
ddlMax.Items.Add(items);
}
恼人但显然必须publicstaticboolsnothingstringstringtotest{returnstring.IsNullOrEmptystringToTest;}您能提供一些代码吗?而指向本地主机的链接对我们没有帮助。本地主机链接只是为了显示我从中提取的查询字符串。不确定在调试ddlMin时是否需要更多的代码,直到下一行取该值,然后将其释放。您还需要查看哪些其他代码?现在,您提供的代码片段更清晰了。尝试强制ddlMin状态并使用ddlMin.DataBind;就在设置selectedValue之后。不幸的是,这也没有做任何事情。我已经在.Net代码中开发了8年多了,以前从未见过类似的东西。你说强迫国家是什么意思?正如我之前所说,在添加ddlMin.DataBind之后,它接受值;但是仍然在ddlMax.selectedValue上更改它会失去它的值吗?
foreach (string item in ConfigurationManager.AppSettings["Budget"].Split(','))
{
items = item.ToLower() == "any"
? new ListItem(item, "0")
: item.Contains("+")
? new ListItem(String.Format("{0:0,0}+", Convert.ToInt32(item.Replace("+", ""))),
"999999999")
: new ListItem(String.Format("{0:0,0}", Convert.ToInt32(item)), item);
ddlMin.Items.Add(items);
}
foreach (string item in ConfigurationManager.AppSettings["Budget"].Split(','))
{
items = item.ToLower() == "any"
? new ListItem(item, "0")
: item.Contains("+")
? new ListItem(String.Format("{0:0,0}+", Convert.ToInt32(item.Replace("+", ""))),
"999999999")
: new ListItem(String.Format("{0:0,0}", Convert.ToInt32(item)), item);
ddlMax.Items.Add(items);
}