مشکل با حلقه for برای ثبت موقت داده در گرید
سلام دوستان من میخوام طی یک حلقه اطلاغات رو وارد کنم///یعنی وقتی i=0 بود سطر اول و ....به همین ترتیب همه سطر هارو؟؟؟
ااین کد رو نوشتم ولی فقط یه سطر رو پر میکنه؟؟؟
int i = 0;
for (i=0; i < dataGridView1.Rows.Count; i++)
{
if (this.dataGridView1.Rows[i].Cells[i].Value == null)
{ this.dataGridView1.Rows[i].Cells[i].Value = "1"; }
نقل قول: مشکل با حلقه for برای ثبت موقت داده در گرید
i در کد شما نشان دهنده سطر هست نه ستون پس Cells[i] باید اصلاح بشه.
نقل قول: مشکل با حلقه for برای ثبت موقت داده در گرید
- ممنونولی باز هم نشد//من میخوام هر بار که روی دکمه کلیک کردم رو باتن یه سطر اضافه بشه؟از نوع تعریف متغیر i نیست؟
نقل قول: مشکل با حلقه for برای ثبت موقت داده در گرید
نقل قول:
نوشته شده توسط
boysilent
- ممنونولی باز هم نشد//من میخوام هر بار که روی دکمه کلیک کردم رو باتن یه سطر اضافه بشه؟از نوع تعریف متغیر i نیست؟
سلام
اگه اصل کاری که می خواید انجام بدید رو بگید بهتر میشه راهنمایی کرد، شما توی اون حلقه گفتید به تعداد سطرهای دیتاگریدویو یه کاری انجام بشه خب زمان لود فرم وقتی ستون ها رو اضافه کرده باشید فقط یک سطر دارید و کد شما هم اون یه سطر رو مقدار دهی می کنه.
نقل قول: مشکل با حلقه for برای ثبت موقت داده در گرید
چشم/
دوستان من مسخوام با هز کلیک بر بوی دکمه اضا فه کردن یه سری اطلاعات در سطر بعدی (خالی) درج بشه //من میخواستم از متغییر استاتیک استفتده کنم ولی فک کنم ویژال نداره یا اگه داره من نمیدونم این شد که یه سطر اضافه میشه ولی چون متغییر استاتیک نیست فقط یه بار اجرا میشه
متغییر i ثابت نمیمونه؟؟؟
int i=0;
if (this.dataGridView1.Rows[i].Cells[2].Value == null)
{
this.dataGridView1.Rows[i].Cells[2].Value = "1";
i++;
}
نقل قول: مشکل با حلقه for برای ثبت موقت داده در گرید
نقل قول:
نوشته شده توسط
boysilent
چشم/
دوستان من مسخوام با هز کلیک بر بوی دکمه اضا فه کردن یه سری اطلاعات در سطر بعدی (خالی) درج بشه //من میخواستم از متغییر استاتیک استفتده کنم ولی فک کنم ویژال نداره یا اگه داره من نمیدونم این شد که یه سطر اضافه میشه ولی چون متغییر استاتیک نیست فقط یه بار اجرا میشه
متغییر i ثابت نمیمونه؟؟؟
int i=0;
if (this.dataGridView1.Rows[i].Cells[2].Value == null)
{
this.dataGridView1.Rows[i].Cells[2].Value = "1";
i++;
}
با توجه به توضيحي كه داديد كدي كه شما نوشتيد اصلا چيزي رو توي گريد درج نميكنه فقط چك ميكننه اگر فلان سلول تهي بود يه مقدار 1 توش ميريزه. حال آنكه شما ميبايست قبل از انجام اين دستورات به گريدتون سطر رو اضافه ميكرديد.كه دو روش داره:
يكي اينكه اگر ديتاگريدتون اطلاعاتش از ديتاتيبل مياد بنابراين شما ميبايست ديتا تيبل رو يك سطر بهش اضافه كنيد تا در گريد نمايش داده بشه:datatable.rows.add(...);
و اگر گريد به ديتا تيبل متصل نيست به گريد يك سطر اضافه كنيد.
نقل قول: مشکل با حلقه for برای ثبت موقت داده در گرید
چیزی متوجه نشدم ؟ دوست عزیز من میخوام بصورت موقت داده رو ارسال کنم به دیتا گرید همین؟
\\\\\\\\\اصلا چيزي رو توي گريد درج نميكنه فقط چك ميكننه اگر فلان سلول تهي بود يه مقدار 1 توش ميريزه\\\\\\\\\\\\:متعجب:
:متعجب:
نقل قول: مشکل با حلقه for برای ثبت موقت داده در گرید
فرض کنید دیتاگرید شما 2 تا ستون داره که ستون ها هم از قبل ایجاد شدن، همچنین شما 2 تا تکست باکس دارید که می خواید اطلاعات رو از اونها بگیرید. خب:
datagridview1.Rows.Add(textBox1.Text, textBox2.Text);
هر بار که روی دکمه بزنید یه سطر جدید به دیتاگریدویو اضافه میشه.
نقل قول: مشکل با حلقه for برای ثبت موقت داده در گرید
این خطارو میده؟؟؟
Rows cannot be programmatically added to the DataGridView's rows collection when the control is data-bound.
نقل قول: مشکل با حلقه for برای ثبت موقت داده در گرید
خب دیتاگریدویو بایند شده و شما نمی تونید به صورت دستی بهش اطلاعات اضافه کنید