DropDownList控件在DataList控件里面的绑定问题!
在DataList控件里面
我用了个DropDownList绑定用户类型!
是这样的!
因为用户的类型是 1 学生 2 商人 3 老板
我要从数据库读出来 <%# Eval("type_id")> 是 1 2 3
但是我DropDownList控件是文字!
我要写个判断!
当用户类型ID等于1 就自动选择学生!!
当用户类型ID等于2 就自动选择商人!!
当用户类型ID等于3 就自动选择老板!!
我不知道怎么在aspx页面写 if语句!
后台代码页面用调用不到这个控件!、
求指教!!
------解决方案--------------------public string test(int typeid)
{
switch (typeid)
{
case 1:
return "学生";
break;
case 2:
return "商人";
break;
case 3:
return "老板";
break;
default:
retrun null;
break;
}
}
是这个意思么
------解决方案-------------------- <%= test(Convert.ToInt32(Eval("type_id")))%>
------解决方案--------------------你打断点看下进了test方法没有啊
------解决方案--------------------<%# test(Convert.ToInt32(Eval("type_id")))%>
写错了不好意思 呵呵
------解决方案--------------------楼上的可以解决。
------解决方案-------------------- protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
{
DropDownList ddl = e.Item.FindControl("DropDownList1") as DropDownList;
ddl.SelectedValue = "2";
}
------解决方案--------------------这样就行了吗?
protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
{
DropDownList ddl = e.Item.FindControl("DropDownList1") as DropDownList;
ddl.DataSource = getTypes();
ddl.DataTextField = "Name";
ddl.DataValueField = "Id";
ddl.DataBind();
ddl.SelectedValue = "2";
}
------解决方案--------------------你在数据库加一列不就好了吗。。不的话。查出来。重新构建一个datatable 再做为数据源绑定就是了。
------解决方案--------------------其实方法很多
你可以在后台写个方法,如6楼的后台判断当前的值并重新赋值。
也可以在数据源修改
------解决方案--------------------
------解决方案--------------------是不是绑定啊。selectvalue = int[1,2,3];selectText = string[”商人“ ,"学生","老板"]