(在线等)谁能教下我将<%#DataBinder.Eval(Container.DataItem,"level")%>(level为INT类型)在页面中显示为汉字啊.
代码如下,我想在页面中显示普通教师,实验室用户,管理员..而不是数字0,1,2...谁能帮一下呀...谢谢..
<asp:TemplateColumn HeaderText= "权限 ">
<ItemTemplate>
<asp:Label ID= "lel " Runat= "server " Text= ' '>
<%#DataBinder.Eval(Container.DataItem, "level ")%>
</asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:DropDownList id= "DropDownList1 " runat= "server " DataTextField= "level ">
<asp:ListItem Value= "0 " Text= "普通教师 " > </asp:ListItem>
<asp:ListItem Value= "1 " Text= "实验室用户 "> </asp:ListItem>
<asp:ListItem Value= "2 " Text= "管理员 "> </asp:ListItem>
</asp:DropDownList>
</EditItemTemplate>
</asp:TemplateColumn>
------解决方案--------------------方法1.后台写一个转换的方法,调用就是了
public static string ChangeIntToDescrible(int inputInt)
{
switch(inputInt)
{
case 0:
return " 普通教师 ";
case 1:
return "实验室用户 ";
case 2:
return "管理员 ";
...
default:
return "非法用户 ";
}
}
然后
<asp:Label ID= "lel " Runat= "server " Text= '
<%# ChangeIntToDescrible(Convert.ToInt32(DataBinder.Eval(Container.DataItem, "level "))%> '> </asp:Label>
ps:
<asp:Label ID= "lel " Runat= "server " Text= ' '>
<%#DataBinder.Eval(Container.DataItem, "level ")%>
</asp:Label> //LZ这样写在asp.net正确吗?
方法2.直接用条件语句
<%#Convert.ToInt32(DataBinder.Eval(Container.DataItem, "level "))==0? "普通教师 ": "实验室用户 "%>
后面在继续嵌套就是了