-1

こんにちは、グリッドビューのチェックボックスに関してこの問題があります。チェックボックスをオンにすると、再割り当てボタンがクリックされた場所で、チェックされたすべての行を再割り当てする必要があります。しかし、チェックされた最初の項目のみを再署名しているだけで、グリッドビューをループしていないようです。私のコードに何が間違っているか、何が欠けているかを特定するのを手伝ってもらえますか:

  protected void Reassign_Click(object sender, EventArgs e)
    {
        foreach (GridViewRow row in ParticularWorkGridView.Rows)
        {
            CheckBox _checkBox = (CheckBox)row.FindControl("ReassignCheckBox");
            Label _RecordNumberLabel = (Label)row.FindControl("NumberLabel");

            if (_checkBox != null &&
                _checkBox.Checked == true)
            {
                SqlConnection con = new SqlConnection(GetConnectionString());
                SqlCommand cmd = new SqlCommand("[Reassig]", con);
                cmd.CommandType = CommandType.StoredProcedure;

                string MemberID = DropDrownList.SelectedValue;

                cmd.Parameters.AddWithValue("number", _NumberLabel.Text);
                cmd.Parameters.AddWithValue("@MemberID", MemberID);

                if (con.State == ConnectionState.Closed)
                {
                    con.Open();
                }

                cmd.ExecuteNonQuery();
                con.Close();
                cmd.Dispose();
                Response.Redirect("ParticularWork.aspx");
            }
        }
    }

ありがとう

4

2 に答える 2

0

削除する

Response.Redirect("ReassignpParticularWork.aspx");

「チェック済み」の条件外。

あなたは最初のチェックで離れており、残りを繰り返し続けていませんxD

于 2013-08-28T14:05:48.793 に答える