簡體   English   中英

如何在gridview中將復選框更改為字符串

[英]how to changed the checkbox to string in gridview

我在數據表中有一個列,當從數據庫中獲取時,其值為True或False。 它顯示在gridview中顯示的復選框。 但是如果值為真,我想顯示“是”,如果值為假,則顯示“否”。 我怎樣才能做到這一點??

        DataTable dt = DBAction.ExecuteQuery(command,zzz.id);


        if (dt != null && dt.Rows.Count > 0)
        {
            // i want to change here
            gridTagHistory.DataSource =dt;
            this.ShowDialog();
        }

您可以修改您的選擇查詢(最推薦)

要么

您可以遍歷DataTable / Gridview

  foreach (DataRow rw in dt.Rows)
  {
     string a = rw["YourBoolColName"].ToString();
      if(a=="True")
       {
        rw["YourBoolColName"]="Yes";
     }
    else {rw["YourBoolColName"]="No";}

  }


foreach (GridViewRow row in GridView1.Rows)
{
    Label myLabel = (Label)row.FindControl("myLabelName");
    if(myLabel.text=="True")
       {
         myLabel.text="YEs";
        }
     else if(myLabel.text=="False")
       {
        myLabel.text="No";
       }

}

修改您的選擇查詢以返回字符串而不是bool值...或在創建數據源之前修改數據集(不推薦)

您可以從設計視圖將該列更改為模板列,然后在標記中可以看到它如何呈現,在這種情況下,它將呈現為復選框。 從這里您可以將顯示更改為您想要的任何內容,因此您可以使用標簽替換復選框並保持相同的綁定。

這是一篇介紹如何使用模板列的文章。

即使你不在這種情況下使用它,這也值得一讀。 模板列允許在與gridview的外觀和交互中更加自由和自定義。

你可以簡單地在你的sql查詢中編寫case並從那里寫yes或no。 並將其綁定到asp:網格視圖中的Boundfield。 簡單的解決方案,並且會更快,然后逐行迭代網格視圖。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM