PDA

View Full Version : اعمال عملیات بر روی کنترل فرمی که فاکوس ندارد



Hussein39
جمعه 02 اردیبهشت 1390, 03:11 صبح
سلام دوستان
من تو فرم اصلیم یه دیتاگراید دارم حالا واسه فیلتر کردن یه فرم دیگه به برنامه اضافه کردم ولی وقتی تو فرم دوم عملیات جست رو انجام می دم کنترل دیتاگراید فرم اول هیچ تغییری نمی کند. می شه این کار رو کرد که تغییر کنه:متعجب:

Hussein39
جمعه 02 اردیبهشت 1390, 17:07 عصر
سلام دوستان
من تو فرم اصلیم یه دیتاگراید دارم حالا واسه فیلتر کردن یه فرم دیگه به برنامه اضافه کردم ولی وقتی تو فرم دوم عملیات جست رو انجام می دم کنترل دیتاگراید فرم اول هیچ تغییری نمی کند. می شه این کار رو کرد که تغییر کنه:متعجب:
راه حلی وجود نداره:متفکر:

Hussein39
شنبه 03 اردیبهشت 1390, 01:40 صبح
راه حلی وجود نداره:متفکر:
یعنی هیچ راه حلی وجود نداره. شماها واسه جست و جو از چه design ای استفاده می کند:افسرده: اگه می شه یکم راهنمایی کنید جای دوری نمی ره:گریه:.

میلاد قاضی پور
شنبه 03 اردیبهشت 1390, 03:27 صبح
توی فرم دوم شما چه کنترلی قرار دادید ؟ میخواید چه اتفاقی بیفته ؟ در فرم دوم چه کدی نوشتید ؟
فرض رو من بر این میگیرم که یک تکس باکس دارید و باتون و میخواید با وارد کردن مقدار در اون تکس باکس و زدن اوکی فرم دوم ناپدید بشه و نتیجه ی جستجو در فرم حاوی گرید نمایش داده بشه . خب کاری نداره که شما اول باید یه گرید فرم اول دسترسی داشته باشید که روشهای زیادی وجود داره .
در باتون فرم دوم یک دستور سلکت بنویسید که اطلاعات تیبل مربوطه رو با مقدار تکس باکس فیلتر کنه و نتیجه رو در گرید فرم اول نمایش بده . در نهایت این فرم دوم ناپدید بشه . همین بود ؟

Hussein39
شنبه 03 اردیبهشت 1390, 11:30 صبح
فرم دوم پنج تا تکس باس هست که من می خوام فیلترم رو بر اساس این پنج تکس باکس انجام بدم و فرم دوم در طی عملیات فیلتر نبنده مگر به انتخاب کاربر؟؟! وقتی هر مقداری توی هر کدوم از تکس باکس های فرم دوم وارد بشه توی دیتاگراید ویوی فرم اول اعمال بشه تمام
اینک کدی که واسه فیلتر استفاده می شه البته تو یه تابع قرار دادمش و تو رویداد TextChange تکس باکس ها فراخوانیش کردم:



GV_Main_Student.DataSource = Search.S_Students.Where(C => (C.S_LastName.Substring(0, txtS_LastName.Text.Length) == txtS_LastName.Text.Substring(0, C.S_LastName.Length)) &&
(C.S_ID.ToString().Substring(0, txtS_ID.Text.Length) == txtS_ID.Text.Substring(0, C.S_ID.ToString().Length)) &&
(C.S_Name.Substring(0, txtS_Name.Text.Length) == txtS_Name.Text.Substring(0, C.S_Name.Length)) &&
(C.S_Father.Substring(0, txtS_Father.Text.Length) == txtS_Father.Text.Substring(0, C.S_Father.Length)) &&
(C.S_Telephone.Substring(0, txtS_Telephone.Text.Length) == txtS_Telephone.Text.Substring(0, C.S_Telephone.Length)) &&
(C.S_Address.Substring(0, txtS_Address.Text.Length) == txtS_Address.Text.Substring(0, C.S_Address.Length)) &&
(C.S_NationNum.ToString().Substring(0, txtS_NationNum.Text.Length) == txtS_NationNum.Text.Substring(0, C.S_NationNum.ToString().Length)) &&
(C.S_IdentifyNum.ToString().Substring(0, txtS_IdetifyNum.Text.Length) == txtS_IdetifyNum.Text.Substring(0, C.S_IdentifyNum.ToString().Length))).Select(C => C);