PDA

View Full Version : سوال: رنگی کردن بخشی از لیست باکس



Reza,M
چهارشنبه 16 مرداد 1392, 14:01 عصر
با سلام
من با کد زیر معادل هر کلمه ای رو که تو تکست باکس نوشته شده باشه رو در richTextBox رنگی (قرمز) میکنم:

int index = 0;
string txtsrch = textBox1.Text;
//richTextBox1.Focus();
while (true)
{
index = richTextBox1.Find(txtsrch, index, RichTextBoxFinds.MatchCase);
if (index == -1) break;
index += textBox1.Text.Length;
richTextBox1.SelectionColor = Color.Red;
}

حالا چطور میتونم همین کار رو بجا richTextBox در لیست باکس انجام بدم؟؟

Reza,M
چهارشنبه 16 مرداد 1392, 16:12 عصر
دوستان نظری ندارن؟؟!!

Amin69
چهارشنبه 16 مرداد 1392, 16:59 عصر
سلام.
امیدوارم درست منظورتون رو متوجه شده باشم؛
با این کد تمام عباراتی که پیدا میکنه رو انتخاب میکنه:

listBox1.SelectionMode = SelectionMode.MultiSimple;
for (int i = 0; i < listBox1.Items.Count; i++)
{
if (listBox1.Items[i].ToString() == txtSearch.text)
listBox1.SelectedIndex = i;
}

Reza,M
چهارشنبه 16 مرداد 1392, 22:33 عصر
سلام.
امیدوارم درست منظورتون رو متوجه شده باشم؛
با این کد تمام عباراتی که پیدا میکنه رو انتخاب میکنه:

listBox1.SelectionMode = SelectionMode.MultiSimple;
for (int i = 0; i < listBox1.Items.Count; i++)
{
if (listBox1.Items[i].ToString() == txtSearch.text)
listBox1.SelectedIndex = i;
}

این کد که سطر رو سلکت میکنه! درصورتی که من میخوام اگه تو هر سطر کاراکتر مورد نظرم وجود داشته باشه فقط اون کاراکترها سلکت بشن

plus
چهارشنبه 16 مرداد 1392, 23:46 عصر
شما باید رویداد DrawItem مربوط به لیست باکس رو هندل کنی...البته به نظر میاد موضوع در حدی هست که بجای هندل کردن رویداد، یک کلاس از کلاس ListBox ارث بری کنید و مسائل مربوط به Paint رو مدیریت کنید.البته کار خیلی ساده ای هم نخواهد بود.

Reza,M
چهارشنبه 16 مرداد 1392, 23:57 عصر
یعنی هیچ راهی نیست!؟؟؟//