0

私はオブジェクト指向の領域にかなり慣れていません。グリッドビューコントロールを宣言してオブジェクトのインスタンスに設定する方法に少し戸惑いました。正しく参照されていないため、null参照例外エラーに問題があります。

 protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {
       var MyLabel = (Label) GridView1.FindControl("lblTest");

       cmd.Parameters.Add("@X", SqlDbType.Char).Value = MyLabel.Text;
}

lblTestは、グリッドビューのラベルコントロールの名前です。しかし、私はこれをグローバルに宣言する必要があり、その方法がよくわかりません。誰かが私を正しい方向に向けて構文を手伝ってくれるなら、それは大いにありがたいです!

4

1 に答える 1

1

lblTestを含むaspxページにgridviewコントロールがある場合は、特定の行のコントロールを見つける必要があります。GridView1_RowUpdatingで、次のことを行います。

GridViewRow row = GridView1.Rows[e.RowIndex];
var MyLabel = row.FindControl("lblTest");

ここであなたはすることができます:

Label MyLabel = row.FindControl("lblTest");

Varは、暗黙の型付き変数に使用されます。このリンクはvarにとって興味深いものです。

于 2012-04-16T20:00:00.497 に答える