PDA

View Full Version : مبتدی: جستجو آیتم های مشابه listbox به ترتیب



civilmajor
شنبه 23 خرداد 1394, 09:43 صبح
سلام
یه برنامه دارم که با نوشتن یک کلمه در txt آرایه مربوط به اون کلمه رو در لیست باکس aoutocomplete پیدا میکنه
حالا ممکنه آرایه های زیادی در لیست باکسم باشه که با اون کلمه تایپ شده در txt همخوانی داشته باشه اما فقط یکیشو سلکت میکنه و من باید بصورت دستی بقیه آرایه ها رو انتخاب کنم و بقیه کارامو انجام بدم
حالا یه کد میخوام که به یک باتن بدم و با زدن اون باتن،آرایه بعدی مربوز به اون کلمه در لیست باکس،بصورت خودکار انتخاب بشه
یه کاری شبیه Find در ویندوز که پس از پیدا کردن کلمه مربوط بازدن کلید نکست کلمه بعدی مرتبط را بصورط خودکار نمایش میده
لطفا اگر ممکنه راهنماییم کنید
ممنون

reza_ali202000
شنبه 23 خرداد 1394, 14:52 عصر
ببینید سرچ شما به این صورت هست.

for(int i=0;i<count;i++)

حالا کاری که میکنید اینه که وقتی پیدا کردین اولی رو میاید به جای اینکه سرچ رو از اول شروع کنید از اون ایندکسه شروع میکنید.

for(int i=indexfind;i<count;i++)

به همین سادگی

civilmajor
چهارشنبه 27 خرداد 1394, 09:18 صبح
این کد را باید توی btnبنویسم؟
میخوام با زدن دکمه بعدیو پیدا کنه
این کد را توی رویداد textchange تکست باکسم نوشتم
for (int i = 0; i < listBox1.Items.Count; i++)
if (listBox1.Items[i].ToString().Contains(textBox1.Text))
{
listBox1.SelectedIndex = i;
break;
}
حالا باید کدی که شما دادیو چطوری توی btn قرار بدم؟

systam
چهارشنبه 27 خرداد 1394, 09:37 صبح
سلام
اصلا احتیاج به این همه کد نیست
اگه مقادیر ثابته به صورت دستی اطلاعات رو وارد کن بعدش نیازی به کد نویسی نیست
ولی اگه مقادیر ثابت نیست اطلاعات بریز در AutoCompleteCustomSource تکس باکس
و بعد دو خصوصیت AutoCompleteMode رو برابر با SuggestAppend
و AutoCompleteSource رو هم برابر با CustomSource
موفق باشی

یا علی

civilmajor
چهارشنبه 27 خرداد 1394, 09:45 صبح
خیلی عالی بود
ممنون
کارمو راه میندازه اما اگر امکانش باشه راهنماییم کنید که چطور کلید نکستم را راه اندازی کنم ممنون میشم

davidrobert
چهارشنبه 27 خرداد 1394, 14:51 عصر
بفرماید این هم نوعی AutoComplete با تکس باکس هستش و اطلاعات میاری برای سریع تایپ کردن و کلامت تکراری رو نمیازه از هر کلمه یک دونه میاره یعنی 2 تا علی بود فقط یک علی رو میاره.
AutoCompleteStringCollection autoComplete = new AutoCompleteStringCollection();
var q = db.Tbl_Ashkhas_Tejare.Distinct();
foreach (var tblAshkhasTejare in q)
{
autoComplete.Add(Convert.ToString(tblAshkhasTejare .AT_CAT_Code_AshKhas_Tejare));
}
TxtCodeVahdTejare.AutoCompleteMode = AutoCompleteMode.Suggest;
TxtCodeVahdTejare.AutoCompleteSource = AutoCompleteSource.CustomSource;
TxtCodeVahdTejare.AutoCompleteCustomSource = autoComplete;