1

私はデータ グリッド ビューを使用しています。オブジェクトのリストがあります。

class abc{
   public int i{get;set;}
   public long b{get;set;}
 }
 //in Form Load
 List<abc> objList = new List();
 listpopulate(); // populate the list.
 datgridvew.dtasource = objList;

「-」を表示したい場所 と、 セルのデフォルト形式を試したが無駄だったObjabc.i value = 0 場所に「Good」を表示したい。Objabc.b = 1000

私を助けてくれませんか?

4

2 に答える 2

0

次のようなイベントを使用できます。

DataGridView.CellValueChanged Event

または、次のようにDataGridView.CellFormattingイベントを使用します。

private void DataGridView1_CellFormatting(object sender,
    DataGridViewCellFormattingEventArgs e)
{
    DataGridView dgv = (DataGridView)sender;
    if (dgv.Columns[e.ColumnIndex].Name == "i" &&
        e.RowIndex >= 0 &&
        dgv["i", e.RowIndex].Value is int) &&
        (((int)dgv["i", e.RowIndex].Value) == 0)
        {
           e.Value = "-";
           e.FormattingApplied = true;           
        }
    }
    else if (dgv.Columns[e.ColumnIndex].Name == "b" &&
        e.RowIndex >= 0 &&
        dgv["b", e.RowIndex].Value is int) &&
        (((int)dgv["b", e.RowIndex].Value) == 1000)
        {
           e.Value = "Good";
           e.FormattingApplied = true;           
        }
    }
}
于 2013-04-05T07:30:58.037 に答える
-1

Jqueryここでは、クライアント側で使用できます

  $(document).ready(function () {
             $(".GRIDVIEWCLASSNAME").find("td").each(function () {
                    if ($(this).text() == "0")
                    {
                        $(this).html("-");
                    }
                     if ($(this).text() == "1000")
                    {
                        $(this).html("Good");
                    }
                });
        });
于 2013-04-05T07:47:32.980 に答える