如题,在数据库表中存放的是数字,0表示女,1表示男,取出来显示的时候必须显示男或女。

解决方案 »

  1.   

    你可以在Select语句中用Case 子句转好啊
      

  2.   

    in html:
    Text ='<%# ((int)DataBinder.Eval(Container.DataItem,"Agenda")==0)?"女":"男" %>'
      

  3.   

    做一个判别程序
    public void string strsex(string str)
      {
          if(str == 1)
             return str = "男";
          if(str == 0)
             return str = "女";
      }
    然后在页面绑定的时候就写
    '<%# strsex(DataBinder.Eval(Container.DataItem,"字段名").ToString()) %>'
      

  4.   

    对不起,刚才应该是public string strsex(string str)就可以,没有void
      

  5.   

    Select case Sex when 0 then '女' else '男' End as Sex,其它字段 from 表名
      

  6.   

    在ItemDataBound事件中处理:
    private void grid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
    //用颜色表示Bug状态
    if( e.Item.Cells[2].Text == Constants.BUG_STATUS_ACTIVE )
    {
    System.Web.UI.WebControls.Image image = (System.Web.UI.WebControls.Image)e.Item.FindControl("imageStatus");
    image.ImageUrl = "../Images/red.gif";
    image.ToolTip = "Active";
    }
    else if( e.Item.Cells[2].Text == Constants.BUG_STATUS_RESOLVED )
    {
    System.Web.UI.WebControls.Image image = (System.Web.UI.WebControls.Image)e.Item.FindControl("imageStatus");
    image.ImageUrl = "../Images/yellow.gif";
    image.ToolTip = "Resolved";
    }
    else if( e.Item.Cells[2].Text == Constants.BUG_STATUS_CLOSED )
    {
    System.Web.UI.WebControls.Image image = (System.Web.UI.WebControls.Image)e.Item.FindControl("imageStatus");
    image.ImageUrl = "../Images/green.gif";
    image.ToolTip = "Closed";
    }
    }
      

  7.   

    Select case Sex when 0 then '女' else '男' End as Sex,其它字段 from 表名
    还要查询其他字段,怎么加上查询其他字段?
      

  8.   

    SELECT
       CASE i
          WHEN  0  THEN '女'
          WHEN  1 THEN '男'
       END AS 性别, .......
    from .....
      

  9.   

    SELECT
    CASE i
    WHEN 0 THEN '女'
    WHEN 1 THEN '男'
    END AS 性别,年龄,职位,其他字段
    from .....
      

  10.   

    "SELECT case bet when 201 then '女' else '男' End as bet , sum(betn) as  1号  FROM [bet] WHERE (([bet].[BetItem] = 1))"IErrorInfo.GetDescription 因 E_FAIL(0x80004005) 而失败。
      

  11.   

    SUM 要分组的应该怎么处理,能不能说具体点,谢谢
      

  12.   

    搂主是不是该补一下sql方面的知识
    你把你的数据库结构贴出来,把你的要求也贴出来,这里高人很多,应该可以帮你搞定.
      

  13.   

    select (case 性别字段 when 1 then '男' else '女') from 性别表
      

  14.   


    更正:
    select (case qq when 1 then '男' else '女'end)  from table1
    100%准確﹐快給分
      

  15.   

    在SQL里更好判断:
    select 性别 =case when sex=1 then '男' else '女' end from tablename
      

  16.   

    如果SQL太复杂,那就考虑放在前台处理吧!
      

  17.   

    in html:
    Text ='<%# ((int)DataBinder.Eval(Container.DataItem,"Agenda")==0)?"女":"男" %>'
    ============================================================
    这个好
      

  18.   

    如果很复杂,那就在SQL里用存储过程解决,又快又好!
      

  19.   

    private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {

    if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
    {
    string sex=Convert.ToString(DataBinder.Eval(e.Item.DataItem, "sex"));
             if (sex == "1")
    {
    e.Item.Cells[3].Text="男";
    }
    else
    {
    e.Item.Cells[3].Text= "女";
    }


    } }
      

  20.   

    Text ='<%# ((int)DataBinder.Eval(Container.DataItem,"Agenda")==0)?"女":"男" %>'
    这个方法最好
      

  21.   

    唉,CSDN有搜索功能,能不能搜一下,已经有很多人问过了!浪费
      

  22.   

    SELECT case bet when 201 then '女' else '男' End as bet , sum(betn) as  1号  FROM [bet] WHERE (([bet].[BetItem] = 1)) group by bet聚合函数的SELECT命令如果出现非聚合输出要group by
      

  23.   

    <asp:TemplateColumn HeaderText="是否公开">
    <ItemTemplate>
    <asp:Label id="lbStatus" runat="server">
    <%# turnToflag(DataBinder.Eval(Container.DataItem,"性别").ToString())%>
    </asp:Label>
    </ItemTemplate>
    </asp:TemplateColumn>
    public string turnToflag(string Flag)
    {
    switch(Flag)
    {
    case "0":
    return "<font color=red>男</font>";
    case "1":
    return "<font color=blue>女</font>";
    default:
    return "<font color=red>状态错误</font>";
    }
    }
      

  24.   

    错了,上面的是HeaderText="是否公开"改为性别
      

  25.   

    方法一
    private void ChengedStatus()     
    {
    foreach (DataGridItem item in dgrdQuery.Items)  //dgrdQuery,你的datagrid名字
    {
    if(item.Cells[1].Text.ToString().Trim()=="0")    //注意你是第几列
    {item.Cells[1].Text="女";}
    if(item.Cells[1].Text.ToString().Trim()=="1")
    {item.Cells[1].Text="男";}
    }
    }
      

  26.   

    方法二
    private void grdTopics_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
        if(e.Item.ItemIndex >= 0)
        {
             String hint;
    hint=e.Item.Cells[7].Text; //获取列内容
             if (hint==1){
                e.Item.Cells[7].Text='男';
             }
             else{
                e.Item.Cells[7].Text='女';
             }
        }
    }
      

  27.   

    Text ='<%# (bool)DataBinder.Eval(Container.DataItem,"Agenda")?"女":"男" %>'
      

  28.   

    在DATAGRID属性里的格式里面选布尔型,在旁边的True值填个男,False值写成女。
    再把数据库里那个字段写成布尔型的不就可以了。
      

  29.   

    Private Sub dgcheckbox_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles dgcheckbox.ItemDataBound
    If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Then
                Dim isman As String = CType(DataBinder.Eval(e.Item.DataItem, "psex"), String)
                Dim wyears As String = CType(DataBinder.Eval(e.Item.DataItem, "worktime"), String)
                If isman = "0" Then
                    e.Item.Cells(2).Text = "男"
                Else
                    e.Item.Cells(2).Text = "女"
                End If
    End If
    end sub
      

  30.   

    方法很多,但是还是这个最简单:in html:
    Text ='<%# ((int)DataBinder.Eval(Container.DataItem,"Agenda")==0)?"女":"男" %>'