GridView里面int型的列显示文字

fagen6688 2011-09-06 05:27:50
用Gridview显示的是数字,我现在要把数字型转化成文字显示,比如数字1就显示已完成,0就显示未完成,请问代码怎么处理?
...全文
147 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
弦弦 2011-09-06
  • 打赏
  • 举报
回复

上面说的不是很清晰啊,

<%# Eval("a")=="1" ? "abc" : "null" %>

Eval("a")是Object型的,所以要这样写
Convert.ToInt32(Eval("a"))==1 ? "已完成" : "未完成"
So_peng 2011-09-06
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 zxy397472251 的回复:]
<%# Eval("你数据库的字段").ToString().Equals("0") ? "未完成" : "已完成"%>
[/Quote]

写的已经很清楚了!
senyi168 2011-09-06
  • 打赏
  • 举报
回复
前台:
<asp:GridView ID="GridMenus" DataKeyNames="MenuID" runat="server"
AutoGenerateColumns="false" onrowdatabound="GridMenus_RowDataBound"> //加上这个事件
<Columns>
<asp:TemplateField HeaderText="是否禁用">
<ItemStyle Width="150px" HorizontalAlign="Center" />
<ItemTemplate><asp:Label ID="lbStatus" runat="server" Text='<%# Eval("IsStatus")%>'></asp:Label></ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
后台:
protected void GridMenus_RowDataBound(object sender, GridViewRowEventArgs e)
{
string sql = "";
if (e.Row.RowType == DataControlRowType.DataRow)
{
Label lbStatus = (Label)e.Row.FindControl("lbStatus");
if (lbStatus.Text.Trim().ToString() != "")
{
if (lbStatus.Text.Trim().ToString() == "0")
lbStatus.Text = "禁用";
else if (lbStatus.Text.Trim().ToString() == "1")
lbStatus.Text = "启用";
}
}
}
CqCoder 2011-09-06
  • 打赏
  • 举报
回复
<%# Eval("你数据库的字段").ToString().Equals("0") ? "未完成" : "已完成"%>
flybisu 2011-09-06
  • 打赏
  • 举报
回复
<%# Eval("字段")==1?已完成:为完成%>
弦弦 2011-09-06
  • 打赏
  • 举报
回复
<%# Eval("Fuck")==1?已完成:为完成%>
菜神传说 2011-09-06
  • 打赏
  • 举报
回复
select (case column when '0' then '未完成' when '1' then '已完成' end)as newcolumn from ....
红魔大卫 2011-09-06
  • 打赏
  • 举报
回复
在数据库里 case when then

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧