من یه combobox رو از طریق add data source پر کردم....حالا میخوام وقتی کاربر شروع نوشتن توی combobox کرد فقط بتونه مثل ایتم های combobox تایپ کنه و چیزه دیگه ای یعنی متنی غیر از اوون آیتم های combobox تایپ نشه.....کسی میتونه منو راهنمایی کنه؟
من یه combobox رو از طریق add data source پر کردم....حالا میخوام وقتی کاربر شروع نوشتن توی combobox کرد فقط بتونه مثل ایتم های combobox تایپ کنه و چیزه دیگه ای یعنی متنی غیر از اوون آیتم های combobox تایپ نشه.....کسی میتونه منو راهنمایی کنه؟
با سلام
من این مشکل رو با کد نویسی در LostFocus کمبو باکس حل کردم (البته نمیدونم این راه درستیه یا نه)
میتونی از رویداد Text change مربوط به کمبو باکس استفاده کنی و کرکترهای ورودی رو بگیری اگه آغاز آیتمی با این حروف بود اون به عنوان text قرار بگیره و ... مثلا "p" آیتم "program" در text کمبو قرار بگیره. (حالت ساده)
البته این چیزی که تو ذهن منه عملیه ولی یه خرده باید رو الگوریتمش کار بشه.
mar=maryam mah=mahmood حالا شاید در این جا آیتم mahyar رو هم داشته باشیم.
خیلی سعی کردم الگوریتم مورد نظرمو بنویسم ولی جمله بندیش خیلی سخته ! به امید اینکه متوجه شده باشین چی میخوام بگم!
چه طوری؟ توضیح میدین ،شاید راه شما ساده تر باشه.من این مشکل رو با کد نویسی در LostFocus کمبو باکس حل کردم (البته نمیدونم این راه درستیه یا نه)
خوب این راهی که خانم maryam_vb گفتن درست هست اما بار cpu برنامه رو به شدت بالا میبره چون فکرشو بکنین...برای هر کاراکتر باید یه بار dataset مربوط به combobox فیلتر بشه ...اگر result داشت کاراکتر اضافه بشه وگرنه اضافه نشه...خوب این کار برنامه رو خیلی busy میکنه!!!1
تنها راه شما همینه که توی combo رو نکاه کنی حالا یا به روش maryam_vb و یا انکه بعد از درخاست کاربر که البته به نظر من بعد از درخاست کاربر اگر این کار رو بکنی استاندارد تره
برای این کار میتونی وقتی کاربر کلید مربوط به این combo رو زد این عملیات ( چک کردن combobox ) رو انجام بدی که دیگه وقت cpu رو هم زیاد نگیره