حذف سطر انتخاب شده در gride view

این تاپیک 1 پاسخ و 2 مشارکت کننده دارد . آخرین آپدیت توسط :  لقمان آوند ،‏ 4 سال و 1 ماه پیش .

این تاپیک تاکنون 1377 بازدید داشته است .

نویسنده پست
سه شنبه ، 23 اکتبر 2012     9:08 ق.ظ #


Farzaneh

Subscriber
0 پست1 تاپیک

درود
من یه گرایدویو دارام که بعد از سرچ مطالب رو درونش قرار میدم. حالا میخوام سطری که انتخاب شده رو حذف کنم اما خطای out of range میده. میشه راهنماییم کنید و بگین اشکال این کجاست؟

protected void btnSearchUser_Click(object sender, EventArgs e)
{
SqlConnection Con = new SqlConnection(MyConnectionString.ConnectionString);
string SqlStr = "SELECT FirstName as 'نام',LastName as 'نام خانوادگی',RoleName as 'سطح دسترسی',Email as 'پست الکترونیک',Gender as 'جنسیت' FROM [UserAcount] WHERE (Email Like N'%'+@search+'%') OR (FirstName LIKE N'%'+@search+'%') OR (LastName LIKE N'%'+@search+'%')";
SqlCommand Cmd = new SqlCommand(SqlStr, Con);
Cmd.Parameters.AddWithValue("@search", txtUserSerch.Text);
try
{
Con.Open();
int i = Cmd.ExecuteNonQuery();
if (i != 0)
{
//BindGridview(txtname.Text);
Grv_Search.DataSource = Cmd.ExecuteReader();
Grv_Search.DataBind();
Con.Close();
//btndeleteuser.Visible = true;
}
else
{
lblMessage.Text = " اين نام کاربري پيدا نشد";
}
}
catch(Exception exp)
{
lblMessage.Text = exp.ToString();
}

}
protected void btnDelete_Click(object sender, EventArgs e)
{
foreach (GridViewRow row in Grv_Search.Rows)
{
CheckBox cb = (CheckBox)row.FindControl("chkSelect");
if (cb.Checked)
{
try
{
string email = Convert.ToString(Grv_Search.DataKeys[row.RowIndex].Value);
SqlDataSource1.DeleteParameters["Email"].DefaultValue = email;
SqlDataSource1.Delete();
lblMessage.Text = "عمل حذف با موفقيت انجام شد";
}
catch (Exception exp)
{
lblMessage.Text = exp.ToString();
}
}
}
}

0  تشکر
سه شنبه ، 23 اکتبر 2012     2:29 ب.ظ #


لقمان آوند

مدیر ارشد
VIP
1704 پست5 تاپیک

سلام

من با زبون های مایکروسافت خیلی کار نکردم . ولی خوب ارور out of range زمانی داده میشه که شما ایندکسی از آرایه رو دسترسی پیدا کنید که خارج از سایز آرایه باشه .

ببینید توی کدوم خط ارور داده این موضوع رو چک کنید ...

0  تشکر
پست 1 تا 2 (از مجموع 2 پست)

برای پاسخ دادن به این تاپیک باید وارد سایت شوید .