aspx内部的C#代码用于填充gridview
我有GridViewaspx内部的C#代码用于填充gridview,c#,asp.net,gridview,C#,Asp.net,Gridview,我有GridView <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"> <Columns> <asp:BoundField DataField="status" H
<asp:GridView ID="GridView1" runat="server"
AutoGenerateColumns="False">
<Columns>
<asp:BoundField DataField="status" HeaderText="status" ItemStyle-Width="100px" > <ItemStyle Width="100px"></ItemStyle>
</asp:BoundField>
</Columns>
</asp:GridView>
在aspx文件中,我想编写一些c#代码。例如下面的例子
如果status==0,则将列值设置为“零”;
如果status==1,则将列值设置为“一”
如何改变
<asp:BoundField DataField="status" HeaderText="status" ItemStyle-Width="100px" > <ItemStyle Width="100px"></ItemStyle>
</asp:BoundField>
那么上面写的算法有效吗?
谢谢 使用templatefields,例如:
<asp:TemplateField HeaderText="Status">
<ItemTemplate>
<%# ReturnText(Eval("Status")) %>
</ItemTemplate>
</asp:TemplateField>
另一个选项是从SQL查询返回文本:
SELECT STATUS,
CASE STATUS WHEN 1 THEN 'One' WHEN 0 THEN 'Zero' END As Status_Text
FROM YourTable
然后,可以将列状态_文本绑定到boundfield
protected string ReturnText(object val)
{
if(val!=null)
{
if(val.ToString().Equals("1")) {return "one"; }
else if(val.ToString().Equals("0")) {return "zero";}
}
return "";
}
SELECT STATUS,
CASE STATUS WHEN 1 THEN 'One' WHEN 0 THEN 'Zero' END As Status_Text
FROM YourTable