1

これを手伝ってくれませんか。

   For Each r As DataGridViewRow In dglist.Rows
        For Each c As DataGridViewCell In r.Cells
            If c.Value IsNot Nothing Then
                **If c.Value.ToString = Label2.Text.ToString Then
                    c.Value.ToString.Trim.Replace(c.Value.ToString.Trim, TextBox1.Text)
                End If**

                'MessageBox.Show(c.Value.ToString)
            End If
        Next
    Next

セルの値をラベルの値に置き換える必要があります。しかし、それでも私のコードは機能しませんでした。

4

1 に答える 1

2

持っている文字列の値を操作するのではなく、値を(セル値プロパティに)割り当てる必要があります。などの操作を行うToStringと、メモリ内に追加のインスタンスが作成されます。割り当てていない場合は、これですべてです。代わりにこれを行ってください:

 For Each r As DataGridViewRow In dglist.Rows
        For Each c As DataGridViewCell In r.Cells
            If c.Value IsNot Nothing Then
                **If c.Value.ToString = Label2.Text Then
                    c.Value = TextBox1.Text
                End If**

                'MessageBox.Show(c.Value.ToString)
            End If
        Next
    Next

それがあなたが探しているものであるかどうかはよくわかりませんので、if句を再検討してください。あなたの質問では、ラベルの値を割り当てたいと言っていますが、貼り付けたコードでは、テキストボックスのテキスト値を求めているように見えました。

于 2012-10-30T05:40:00.950 に答える