PDA

View Full Version : خاصیت controls



morteza_bn
سه شنبه 16 شهریور 1389, 18:43 عصر
هنگامی که اولین بار برنامه رو اجرا می کنم من به کنترلهای یکی از فرمها دسترسی دارم(از طریق همین خاصیت controls) ولی وقتی فرم بسته میشه و دوباره باز میشه اندازه این آرایه صفر میشه و انگار دوباره مقدار دهی نمیشه....اشکال از کجاست؟

vandermond
سه شنبه 16 شهریور 1389, 22:02 عصر
دوست عزيز
لطفا سوالت رو كامل تر و با تكه كدي كه مينويسي بزار. به كنترلهاي يه فرم ديگه ميخاي دسترسي داشته باشي؟
شما كاملتر بگو ، اينطوري زودتر هم به نتيجه ميرسي...

fjm11100
چهارشنبه 17 شهریور 1389, 10:45 صبح
خب وقتی فرم را می بندی و دوباره باز می کنی در واقع داری instance جدیدی از کلاس فرمت می سازی که خاصیت کنترلش در حالت پیشفرض است.

morteza_bn
چهارشنبه 17 شهریور 1389, 16:53 عصر
for (int i = 0; i < count; i++)
{
for (int j = 0; j < count; j++)
{

collisionform.Controls[counter].Visible = true;
collisionform.Controls[counter].AccessibleName = routA[i];
collisionform.Controls[counter].AccessibleDescription = routA[j];
collisionform.Controls[counter++].Text = " برخورد مسیر از " + routA[i] + " به " + routA[j];

}
}

حالل برای اولین با تعداد آرایه controls برابر تعداد کنترل های برنامه هست ولی یه بار که این فرم بسته میشه و دوباره باز میشه پیغام میده که
Index 1 is out of range.
Parameter name: index
یعنی اندازه آرایه برابر صفر هستش
چجوری آرایه رو مقدار دهی کنم
اینم بگم که من متغیر counter رو قبل از حلقه فور صفر میکنم
ممنون

morteza_bn
پنج شنبه 18 شهریور 1389, 11:44 صبح
for (int i = 0; i < count; i++)
{
for (int j = 0; j < count; j++)
{

collisionform.Controls[counter].Visible = true;
collisionform.Controls[counter].AccessibleName = routA[i];
collisionform.Controls[counter].AccessibleDescription = routA[j];
collisionform.Controls[counter++].Text = " برخورد مسیر از " + routA[i] + " به " + routA[j];

}
}حالل برای اولین با تعداد آرایه controls برابر تعداد کنترل های برنامه هست ولی یه بار که این فرم بسته میشه و دوباره باز میشه پیغام میده که
Index 1 is out of range.
Parameter name: index
یعنی اندازه آرایه برابر صفر هستش
چجوری آرایه رو مقدار دهی کنم
اینم بگم که من متغیر counter رو قبل از حلقه فور صفر میکنم
ممنون
دوستان کارم به خاطر همین مسئله گیر کرده... اگه کسی بلده جواب بده!!!