PDA

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



Reza,M
چهارشنبه 16 مرداد 1392, 15: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, 17:12 عصر
دوستان نظری ندارن؟؟!!

Amin69
چهارشنبه 16 مرداد 1392, 17: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, 23: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
پنج شنبه 17 مرداد 1392, 00:46 صبح
شما باید رویداد DrawItem مربوط به لیست باکس رو هندل کنی...البته به نظر میاد موضوع در حدی هست که بجای هندل کردن رویداد، یک کلاس از کلاس ListBox ارث بری کنید و مسائل مربوط به Paint رو مدیریت کنید.البته کار خیلی ساده ای هم نخواهد بود.

Reza,M
پنج شنبه 17 مرداد 1392, 00:57 صبح
یعنی هیچ راهی نیست!؟؟؟//