如题
各位高手Grid Vilew怎么做如下效果   客户状态      人数   来电客户       1
  
   到访客户       1
而这个来电客户和到访客户是固定的
请问我怎么弄上去
谢了

解决方案 »

  1.   

    行绑定事件            
    if (e.Row.RowType == DataControlRowType.DataRow) 
     {    int i = e.Row.DataItemIndex    if(i==0)
         {
            e.Row.Cell[0].Text="来电客户"
         } 
    }
      

  2.   

    不太明白
    我试了e.Row.Cell[0].Text="来电客户" 没有row只有rows
    rows里没有Cell[0]
      

  3.   

    我觉得,
    你绑定的时候应该把类别也读取出来,然后再在
    行绑定时间里判断。
    或者直接在sql 语句里搞定
    SELECT COUNT(*) AS num, 
          CASE Type WHEN 1 THEN '来电' ELSE '到访' END AS typename
    FROM P_fyType
    GROUP BY Type
      

  4.   

     protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
     {
           if (e.Row.RowType == DataControlRowType.DataRow)
           {
                e.Row.Cell[0].Text="来电客户" 
           }
     }
    必须在RowDataBound事件中,还要进行if判断才行
      

  5.   

    不能这样
    因为这是两个表的~你那样不行
    我就是要在Grid Vilew添加那两个列值
      

  6.   

    我就是要在Grid Vilew里第一行里
    手动添加来电客户和到访客户啊
      

  7.   

    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                switch (e.Row.DataItemIndex)
                {
                    case 0:
                        e.Row.Cells[0].Text = "来电客户";
                        break;
                    case 1:
                        e.Row.Cells[0].Text = "到访客户";
                        break;
                }
            }
        }
      

  8.   

    动态创建一个datatable 把datatable赋给Gridview不就可以了吗
    DataTable dt = new DataTable("Table1");
    dt.Columns.Add("客户状态");
    dt.Columns.Add("人数");
    DataRow dr = dt.NewRow();
    dr[0] = "来电客户";
    dr[1] = "1";
    dt.Rows.Add(dr);DataRow dr1 = dt.NewRow();
    dr1[0] = "到访客户";
    dr1[1] = "1";
    dt.Rows.Add(dr1);
    dt.AcceptChanges();
    Gridview.DataSource = dt;
    Gridview.DataBind();
      

  9.   

    谢谢你们
    你们方法我都试过了
    但是要实现我想要的却是有点问题~~
    我把我想要实现的告诉你们吧
    首先Grid Vilew显示如下
     客户状态      人数   来电客户      1 
      
      到访客户      1 而这个来电客户和到访客户不是数据库里的数据
    是我要添加进去的
    我要但是来电和到访都在同一张表CallInClient里
    搜索里面的ID的个数就是来电客户的个数
    搜索里面的peopleNumber这个字段
    显示的就是到访的个数
    我现在药手动绑定但是怎么弄都不行
    还得有分页如果没数据提示数据为空
    请问高手怎么弄?我现在写上之后数据库里有数据但是就是不显示
    如果解决我这个问题我可以加分呀
    各位高手帮帮我吧
      

  10.   

    总之感觉你的比较乱,把你表结构贴出来,
    搜索里面的ID的个数就是来电客户的个数 这就是说来电客户只有一条记录,
    搜索里面的peopleNumber这个字段 
    显示的就是到访的个数  这个应该是表里有多少条就有多少条记录了吧,
    一个一天,一个N条
      

  11.   

    不是
    如果只是来电的话
    peopleNumber里面没有记录的
      

  12.   

    对不起
    错了
    到访和来电是两个表
    查询数据库里的CallInClient和AttendClient这两个表
    CallInClient表里的ID出现的次数就是来电多少人
    AttendClient表里的fromSource字段出现的次数就是到访有多少人对不起
      

  13.   

    你说的情况不适合用GridView,用简单的table就可以解决<% 
    SqlCommand cmd = new SqlCommand();
    cmd.Connection = new SqlConnection("xxx"); // 填你的数据库连接串
    cmd.CommandText = "select count(*) from CallInClient where ID is not null";
    int callerCount = (int)cmd.ExecuteScalar();
    cmd.CommandText = "select count(*) from AttendClient where fromSource is not null";
    int visitorCount = (int)cmd.ExecuteScalar();
     %><table>
    <tr><td>客户状态</td><td>人数</td></tr>
    <tr><td>来电客户</td><td><%= callerCount %></td></tr>
    <tr><td>到访客户</td><td><%= visitorCount %></td></tr>
    </table>