PDA

View Full Version : auto complete



shervin110uk
شنبه 04 فروردین 1386, 14:16 عصر
واقعا خیلی توی سایت گشتم. نبود!
چیزی که هست من فرض کنید یک کلمه توی ذهنم هست ؛ مثلا علی
من میخوام وقتی عل را توی یک تکست باکس نوشتم اون خودش علی را بهم پیشنهاد بده ...
یک روش دستی هست که باید توی کالکشن بنویسی.. من میخواهم ببینم راه دینامیکی هم هست واسه این یا نه؟

مهدی نان شکری
شنبه 04 فروردین 1386, 14:56 عصر
AutoCompleteCustomSource یک Collection هست. فکر نکنم غیر این راهی داشته باشه.
ببینیم نظر اساتید چیه...

mostafa_leman
شنبه 04 فروردین 1386, 22:03 عصر
اگه داده هاتونو توی دیتابیس ذخیره میکنید میتونید داده ها رو با استفاده از binding source یا dataview و متد rowfilter بر همین اساس فیلتر کنید و از دستور like استفاده کنید . اینطوری میتونید داده های پیشنهادی رو نمایش بدین
مثلا :


me.bindingsource1.rowfilter="name like '" & me.textbox1.text & "%'"

shervin110uk
یک شنبه 05 فروردین 1386, 00:05 صبح
اگه داده هاتونو توی دیتابیس ذخیره میکنید میتونید داده ها رو با استفاده از binding source یا dataview و متد rowfilter بر همین اساس فیلتر کنید و از دستور like استفاده کنید . اینطوری میتونید داده های پیشنهادی رو نمایش بدین
مثلا :


me.bindingsource1.rowfilter="name like '" & me.textbox1.text & "%'"


اونوقت از کجا باید بفهمه تکست باکس که ما داریم به اون دیتابیس را مقید میکنیم؟

محسن بابائی
یک شنبه 05 فروردین 1386, 01:55 صبح
ببین اینا به دردت می خورند . ابیته خودم تستشون نکردم
http://www.codeproject.com/vb/net/autocomplete_combobox.asp

http://www.codeproject.com/vb/net/VbNetAutocomplete.asp

mostafa_leman
یک شنبه 05 فروردین 1386, 03:04 صبح
شما یک جوری باید داده های پیش فرض رو به نمایش بگذارین . نحوه بایند کردن تکست باکس رو هم که بلدین . اما من پیشنهاد میکنم از combobox استفاده کنین

linux
یک شنبه 05 فروردین 1386, 03:39 صبح
واقعا خیلی توی سایت گشتم. نبود!
چیزی که هست من فرض کنید یک کلمه توی ذهنم هست ؛ مثلا علی
من میخوام وقتی عل را توی یک تکست باکس نوشتم اون خودش علی را بهم پیشنهاد بده ...
یک روش دستی هست که باید توی کالکشن بنویسی.. من میخواهم ببینم راه دینامیکی هم هست واسه این یا نه؟
ببنید کالکشن را می توانید بسازید.


Dim Auto As New AutoCompleteStringCollection
Auto.Add("بابک")
Auto.Add("علی")
Auto.Add("حسن")
Me.TextBox1.AutoCompleteSource = AutoCompleteSource.CustomSource
Me.TextBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend
Me.TextBox1.AutoCompleteCustomSource = Auto

فرض کنید 1000 تا اسم دارید می توانید آنها از دیتابیس بخوانید در یک حلقه به این Auto اضافه کنید

shervin110uk
یک شنبه 05 فروردین 1386, 13:24 عصر
واقعا خیلی توی سایت گشتم. نبود!
چیزی که هست من فرض کنید یک کلمه توی ذهنم هست ؛ مثلا علی
من میخوام وقتی عل را توی یک تکست باکس نوشتم اون خودش علی را بهم پیشنهاد بده ...
یک روش دستی هست که باید توی کالکشن بنویسی.. من میخواهم ببینم راه دینامیکی هم هست واسه این یا نه؟
من خودم یک مقدار بررسی کردم و جستجو
اگر از کمبوباکس استفاده بشه که همونجوری که میدونید کمبوباکس را میشه حتی به شکل تکست باکس درآورد و در قسمتهای مربوطه suggest and append را انتخاب کرد و در قسمت sourcesh از itemlist استفاده کنید و ایتم لیستش را به بانک وصل کنید موضوع حل میشه... فقط اینجا یک سوال هست . من میخوام ببینم چطوری میشه دیتابایند یا دیتاست را ریست کرد؟ یعنی مثلا به یک کمبوباکس وصل باشه و شما اطلاعات درونه کمبوباکس را با تغییر ایجاد شده در دیتابیستون اطلاعاتش را آپدیت کنید؟

مهدی نان شکری
یک شنبه 05 فروردین 1386, 14:51 عصر
من آخر متوجه نشدم شما می خوایید با تکست باکس این کار رو انجام بدید یا با کمبو باکس.
برای این سوالتون با متد Update می تونید تغییرات دیتابیستونو به دیتاست منتقل کنید.

[baran]
جمعه 10 مهر 1388, 21:40 عصر
Dim Auto AsNew AutoCompleteStringCollection
Auto.Add("بابک")
Auto.Add("علی")
Auto.Add("حسن")
Me.TextBox1.AutoCompleteSource = AutoCompleteSource.CustomSource
Me.TextBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend
Me.TextBox1.AutoCompleteCustomSource = Auto
[/code]
فرض کنید 1000 تا اسم دارید می توانید آنها از دیتابیس بخوانید در یک حلقه به این Auto اضافه کنید[/quote]

لطفا اگر امکان دارد حلقه مربوطه را هم بنویسید.

Mani_rf
شنبه 11 مهر 1388, 11:54 صبح
سلام خدمت همه دوستان گرامی.

در ادامه این بحث من هم یک سوال داشتم : برای اینکه AutoComlet حروف اول را مقایسه کنه و یک کلمه را پیشنهاد بده راه های گوناگونی هست اما می خواستم بدونم کسی راحی سراغ داره که AutoComplet بتونه نوشته داخل TextBox یا ComboBox را با چند حرف از وسط Sourceی که برای Auto Complet گرفته شده مقایسه کند؟
برای مثال فرض کنید که در یک ComboBoX اسامی مانند :

حمید ولیپور
رضا غلامی
محمد رحیمی
و ...


ثبت شده و با زدن « رحم » نام - محمد رحیمی - را به عنوان گزینه پیشنهادی معرفی نماید.

راحی سراغ دارید؟

Navid Asadi
شنبه 11 مهر 1388, 22:25 عصر
bobylon معرف حضور همه هست...
اون از یه کمبو استفاده کرده اما با حالیش به اینه که کلمه پیشنهادی در ادامه نوشته شما میاد و Select میشه تا با تایپ حرف بعدی آپ بشه...
خوب آیا برای این باید کد بنویسیم؟

salam333
چهارشنبه 15 مهر 1388, 08:02 صبح
Dim Auto AsNew AutoCompleteStringCollection
Auto.Add("بابک")
Auto.Add("علی")
Auto.Add("حسن")
Me.TextBox1.AutoCompleteSource = AutoCompleteSource.CustomSource
Me.TextBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend
Me.TextBox1.AutoCompleteCustomSource = Auto
كد فوق براي comboوlistجوابگو هست ولي برايtextboxجواب نمده راه ديگه برتي مورد اخر ميشه پيدا كرد؟