PDA

View Full Version : مشکل با خواندن از گرید ویو



mortezasar
سه شنبه 02 آبان 1391, 21:07 عصر
با سلام خدمت همه دوستان این دستور اعصابم رو خورد کرده 2 ساعته باهاش ور میرم اما درست نمیشه
اینم کدش


radio = gvmasedit.CurrentRow.Cells[10].Value.ToString();
radio.Trim();
vazfal = gvmasedit.CurrentRow.Cells[11].Value.ToString();

if (radio == radioButton6.Text)
{
radioButton6.Checked = true;
txtcomm2.Text = vazfal;
}
if (radio == radioButton7.Text)
{
radioButton7.Checked = true;
txtcomm1.Text = vazfal;
}
if (radio == radioButton8.Text)
{
radioButton8.Checked = true;
txtcomm3.Text = vazfal;
}

اطلاعات رو از گرید ویو میگره و اون رادیو بتنی که اون اسم رو داره تیک میزنه و با تیک خوردن اون یک تکست باکس باز میشه که یک متن دیگه از گرید ویو رو میگیره و میریزه داخل تکست باکس
کمک کنید هم بافر کم آوردم هم رم !:عصبانی::عصبانی::عصبانی::عصب انی::عصبانی::عصبانی:
ضمنا رشته radio و vazfal و fal رو داخل رویداد کلیک باتن تعریف کردم (local)

matin.soft
سه شنبه 02 آبان 1391, 22:19 عصر
ببخشید دستوراتتون خطا داره یا کاری رو که شما می خواین انجام نمی ده؟

veniz2008
سه شنبه 02 آبان 1391, 22:58 عصر
سلام. چطور سطر جاری ( currentrow ) رو مشخص میکنی؟؟. مشکلت همینجاست عزیز.
از یکی از رویدادهای گرید استفاده کنید ( من خودم معمولا از رویداد rowheadermousedoubleclick استفاده میکنم ( امیدوارم اسم رویداد رو درست نوشته باشم چون الان که اینو مینویسم به ویژوال دسترسی ندارم) ). این رویداد زمانیکه در ابتدای سطر دابل کلیک میکنید فعال میشه. شما کدی رو که نوشتی درون این رویدادی که گفتم بذار و برنامه رو اجرا کن و در ابتدای هر سطری که خواستی دابل کلیک کن.
موفق باشی

mortezasar
سه شنبه 02 آبان 1391, 23:06 عصر
کاری که من میخوام انجام نمیدن
با کلیک مشخص میکنم خاصیت selection رو روی select row گذاشتم

morteza271
سه شنبه 02 آبان 1391, 23:16 عصر
کدتون رو به صورت زیر بنویسید ببینید درست میشه یا نه:
radio = gvmasedit.CurrentRow.Cells[10].Value.ToString().Trim();
vazfal = gvmasedit.CurrentRow.Cells[11].Value.ToString();

if (radio == radioButton6.Text.Trim())
{
radioButton6.Checked = true;
txtcomm2.Text = vazfal;
}
if (radio == radioButton7.Text.Trim())
{
radioButton7.Checked = true;
txtcomm1.Text = vazfal;
}
if (radio == radioButton8.Text.Trim())
{
radioButton8.Checked = true;
txtcomm3.Text = vazfal;
}

البته این فقط یه حدس بود که بهتون گفتم این کار رو بکنید!!!
ولی اگه مشکلتون رفع نشد برنامه رو تریس کنید و وقتی که به اولین دستور if رسیدین چک کنید ببینید که متن داخل radio چیه و ایا با متن چک باکس هاتون برابر هست یا نه!!!

mortezasar
سه شنبه 02 آبان 1391, 23:27 عصر
میشه راجع به تریس توضیح بدین
آخه دقیقا یک خط بالاتر از همین ساختار استفاده کردم و داره جواب میده

danialafshari
چهارشنبه 03 آبان 1391, 03:02 صبح
سلام دوست عزیز
این if های که شما گذاشتید همه دستورو اجرا می کنند و حتی اگر مقدار درست بود دستور درون if بعدی هم اجرا می کند.
بهتر است در این نوع if ها در آخر آن کد Return; را قرار دهید که اگر if یکی از آنها بود به سراغ if بعدی نرود
موفق باشی

morteza271
چهارشنبه 03 آبان 1391, 10:50 صبح
میشه راجع به تریس توضیح بدین
آخه دقیقا یک خط بالاتر از همین ساختار استفاده کردم و داره جواب میده
برای تریس کردن این کارها رو انجام بدین :
مثلا بر روی همون کد خودتون که چند تا if داشت.
1- شما روی خط دستور if اول کلیک کنید و کلید F9 رو بزنید تا یک برک پوینت ایجاد بشه.
2- برنامه رو با F5 اجرا کنید
3- کلیدی که کدتون توی اون نوشته شده رو کلیک کنید
4- وقتی برنامه به اون خط برسه زرد میشه و متوجه می شید.
5- در این حالت وقتی موس رو روی یک متغیر نگه دارین می تونید مقدار اونو ببینید.
و با F10 می تونید کدتون رو خط به خط اجرا کنید.

موفق باشید

morteza271
چهارشنبه 03 آبان 1391, 10:51 صبح
میشه راجع به تریس توضیح بدین
آخه دقیقا یک خط بالاتر از همین ساختار استفاده کردم و داره جواب میده
برای تریس کردن این کارها رو انجام بدین :
مثلا بر روی همون کد خودتون که چند تا if داشت.
1- شما روی خط دستور if اول کلیک کنید و کلید F9 رو بزنید تا یک برک پوینت ایجاد بشه.
2- برنامه رو با F5 اجرا کنید
3- کلیدی که کدتون توی اون نوشته شده رو کلیک کنید
4- وقتی برنامه به اون خط برسه زرد میشه و متوجه می شید.
5- در این حالت وقتی موس رو روی یک متغیر نگه دارین می تونید مقدار اونو ببینید.
و با F10 می تونید کدتون رو خط به خط اجرا کنید.

موفق باشید

morteza271
چهارشنبه 03 آبان 1391, 10:54 صبح
بس که سایت خطا میده و میگه فشار بیش از حد بر روی سرور چند وقته بیشتر پاسخ هام دوباره ثبت میشه و یکیشو حذف میکنم!!!!!
ولی واقعا دیگه حوصلشو ندارم که حذف کنم و اگه مشکلی هست مدیرات محترم سایت حذفشون کنن!!!! یا اینکه سایت رو درست کنن که حداقل وقتی خطا میده ثبت نکنه تا وقتی رفرش رو میزنیم دوباره ثبت نشه و تکراری نشه!!!!!

mortezasar
پنج شنبه 04 آبان 1391, 20:29 عصر
سلام برنامه رو تریس کردم اما رشته ام مقدار نال داره اما خطی که اطلاعات گرید رو نشون میده حاوی مقدار هست میشه کمک کنید