Я заполняю значения при загрузке страницы в виде сетки, используя SQLDataSource. Я могу видеть все значения правильно. Теперь я также добавил столбец флажок в качестве поля шаблона. Итак, если я установлю флажок перед строкой, он удалит эту строку из базы данных, но все же я смогу увидеть эту же строку в виде сетки. Теперь, если я обновлю sh страницу, значения исчезли (так как запрос работал без ошибок), но я не хочу обновлять sh страницу для каждой записи. Я хочу обновить sh вид сетки при нажатии кнопки. я попытался GridView.Update () Cand gridview.refre sh, но обе функции выдают ошибку во время выполнения. см. код ниже.
int i = 0;
int j = 0;
for (i = 0; i < GridView1.Rows.Count; i++)
{
CheckBox CH = (CheckBox)GridView1.Rows[i].FindControl("CheckBox4");
Label DebitSrNo = (Label)GridView1.Rows[i].FindControl("Label2");
Label DebitDate = (Label)GridView1.Rows[i].FindControl("lblDebitDate");
if (CH.Checked == true)
{
for (j = 0; j < GridView2.Rows.Count; j++)
{
CheckBox CreditCheckBox = (CheckBox)GridView2.Rows[j].FindControl("chkCreditBalance");
Label lb1 = (Label)GridView2.Rows[j].FindControl("lblSrNoCredit");
Label CreditDate = (Label)GridView2.Rows[j].FindControl("lblCreditDate");
if (CreditCheckBox.Checked == true)
{
if ((Convert.ToDateTime(CreditDate.Text) > Convert.ToDateTime(DebitDate.Text)))
{
string query = "UPDATE [BALANCE_CREDIT] SET STATUS = 1 WHERE SR_NO = {sr_no}";
query = query.Replace("{sr_no}", lb1.Text);
SqlConnection conn = OpenDBConnection();
int AffectedRows = 0;
SqlCommand cmd = new SqlCommand(query, conn);
AffectedRows = cmd.ExecuteNonQuery();
query = "UPDATE [BALANCE_DEBIT] SET STATUS = 1 WHERE SR_NO = {sr_no}";
query = query.Replace("{sr_no}", DebitSrNo.Text);
cmd = new SqlCommand(query, conn);
AffectedRows = cmd.ExecuteNonQuery();
CloseConnection(conn);
GridView1.Rows.Remove(2);//here it is giving runtime error. so as for update and refresh
}
}
}
}