0

いくつかの列を持つデータビューがあります:

<Columns>  
    <asp:BoundField DataField="report_type" HeaderText="Report Type"   
        SortExpression="report_type" />  
    <asp:BoundField DataField="comments" HeaderText="Comments"   
        SortExpression="comments" />  
    <asp:BoundField DataField="anonymouse" HeaderText="anonymouse"   
        SortExpression="anonymouse" />  
    <asp:BoundField DataField="user" HeaderText="Reported by"   
        SortExpression="user" />  
</Columns> 

画面からanonymouse列を削除するので、デモ用にここに追加しました。

anonymouse列には、1またはのいずれかがあり0ます。の場合は1、ユーザー列のテキストをに設定する必要がありますprivate。anonymouse列の場合は、0通常どおりユーザー名が表示されます。

これはどのように行うことができますか?

4

1 に答える 1

2

RowDataBoundで試すことができます

void Control_RowDataBound(Object sender, GridViewRowEventArgs e)
  {

    if(e.Row.RowType == DataControlRowType.DataRow)
    {
      if(e.Row.Cells[3].Text == "1")
      {
         e.Row.Cells[4].Text = ""; // erase the value of cell
         //You can use also to cell : Attributes["style"] = "display:none";


      }
      else
      {
        .... 
      }
  }

}

于 2012-08-31T13:03:42.933 に答える