Index was out of range. Must be non-negative and less than the size of the collection. Parameter na
با سلام ...
من يه گريد ويو دارم كه توي رويداد userDeletingRow اون كد نوشمكه وقتي يه سطر رو انتخاب مي كنم اون رو حذف كنه . ولي الان error ميده ................
Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index
نقل قول: Index was out of range. Must be non-negative and less than the size of the collection. Para
سلام
این ارور برای زمانی هست که شما ایندکسی از یک مجمو عه رو صدا میزنید که وجود نداره
حالا کدتون رو ببینید که شاید یه سطری از گرید رو صدا می زنید که وجود نداره
موفق باشید .
نقل قول: Index was out of range. Must be non-negative and less than the size of the collection. Para
کسی هست بیشتر در مورد این خطا توضیح بده؟
نقل قول: Index was out of range. Must be non-negative and less than the size of the collection. Para
دوست عزیز باید id اون سطر که باید کلید باشه رو بگیری بریزی تو یه متغییر پابلیک بعد بگی او سطری که idیش برابر با این متغییره رو حذف کن ارور ماله زمانی هستش که مقداری در پارامتر ریخته نشده یا ریخته شده عدد عجیب غریبیه....
مثلا من خودم در متد زیر متغییر رو تعریف کردم
public partial class Delete_Question : Form
{
public int memberid_delete;
.
.
.
.}
بعد تو فرمی که grid توش هست تو رویداد کلیک دکمه حذف اینو نوشتم
Delete_Question_Form dq = new Delete_Question_Form();
dq.memberid_delete = Convert.ToInt32(grd_view_member.SelectedRows[0].Cells["id"].Value);
بعد تو فرمی که ازم میپرسه میخوام پاک کنم یا نه اینو نوشتم
SqlCommand cmd = new SqlCommand("DeleteMember", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@id", memberid_delete);
con.Open();
cmd.ExecuteNonQuery();
con.Close()
خلاصه یه جوری باید مقدار فیلد کلیدت رو تو یه متغیر نگه داری اگه داری از چند فرم استفاده میکنی