0

のすべてのセルを読み取っていますDataGridViewが、それぞれで、セルの最初の 3 つの要素を文字列として比較し、一致する場合は空白のセルに変換したいと考えています。

これまでのところ、私はこれを試しました

 for (int z = 0; z < dataGridView7.Rows.Count; z++)
 {
     for (int i = 0; i < dataGridView7.Columns.Count; i++)
     {
          string caixa = dataGridView7[z, i].Value.ToString(); //problem right here
          string caixaselecta = caixa.Substring(0, 3);

          if (caixaselecta == "0 *")
          {
              dataGridView7[z, i].Value = "";
          }
    }
}

forサイクルは正しく行われ、試合も行われます。問題は、分析中の現在のセルを特定し、それを文字列に変換することだと思います。

現在のセルに到達するために同様の方法を試しましたが、エラーが発生するか、文字列caixaが正しく定義されていません。

ヒントはありますか?

4

1 に答える 1

0

インデックスを間違った順序で指定しています。DataGridView インデクサーは次のように定義されます

public DataGridViewCell this[
    int columnIndex,
    int rowIndex
] { get; set; }

-MSDNのドキュメントから参照

そのため、インデクサーで z と i を交換する必要があります。

for (int z = 0; z < dataGridView7.Rows.Count; z++)
{
    for (int i = 0; i < dataGridView7.Columns.Count; i++)
    {
        string caixa = dataGridView7[i, z].Value.ToString();
        ....
        ....
        ....
    }
}
于 2015-03-25T04:38:28.130 に答える