PDA

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



saeedhushmand
سه شنبه 06 تیر 1391, 14:18 عصر
دوستان من یک مجموعه دارم به صورت زیر(linq)
string[] line = { "Amir","saeed","Ali"};

می خوام وقتی کاربر در textbox1 نوشت ، چیزی که نوشته با این مجموعه مقاسه بشه و کلماتی از این مجموعه که 3 حرفش با کلمه نوشته شده یکی بود ، انتخاب بشه و توی یک listbox نمایش داده بشه

saman_h
سه شنبه 06 تیر 1391, 14:35 عصر
فکرکنم به این صورت بشه ، نشد تست کنم خودتون زحمتشو بکشید :
string i = textbox1.text;
foreach ( i in line )
listbox1.items.add(textbox1.text)

برای اینکه بخوای فقط 3 حرف اول رو چک کنی از دستور textbox1.select(0,3) میتونی استفاده کنی بعد اونو با حلقه Foreach یا با حلقه معمولی و شرط وارد لیست باکس کنی
موفق باشی

saeedhushmand
سه شنبه 06 تیر 1391, 15:00 عصر
دوست عزیز ممنون از کمکت ، من خودم یک کد به شکل زیر نوشتم فقط نمی دونم چه جوری 3 حرف چک کنم اگر امکان داره برام ویرایشش کن ممنون می شم....

var items = from item in line
where item.Contains(Text)
select item;
foreach (var item in items)
{
var parts = item.Split(new char[] { '|' });
words.Add(new Word() { Text = parts[0], AttachedText = parts[1], IsShellCommand = (parts[2] == "true") });
listBox1.Items.Add(parts[1]);
}

saman_h
چهارشنبه 07 تیر 1391, 12:30 عصر
اوووووووووو ، کارو چقد سخت کردی !! بیا واست برنامشو نوشتم تستشم کردم کارد کرد . اگه خواستی تا سورس رو هم بذارم ... !!!
اول که اون آرایه رو تعریف میکنی ، مثلا :
string[] line = {"alireza","akbar","amir","ali","saeed","amirAli","amin" };

بعدشم داخل دکمه اینارو مینویسی :

textBox3.Select(0, 3);
for ( int r=0;r<line.Length;r++)
{
if (line[r].Contains(textBox3.SelectedText))
{
listBox2.Items.Add(textBox3.SelectedText);
}
}

فقط حواست به اون شماره لیست باکس و تکست باکسه باشه