PDA

View Full Version : سوال: Bold کردن زیر رشته ها در datagridview



قله بلند
پنج شنبه 05 تیر 1393, 14:55 عصر
با سلام

من از رویداد textBox1_TextChanged

استفاده می کنم تا اگر کاربر مثلاً a رو وارد کرد، نتایجی که درونشون a وجود داره درون datagridview لیست شود.
حالا می خواهم اگر کاربر، a را در textbox1 وارد کرد، در datagridview، کاراکتر مورد جستجو توسط کاربر که در اینجا مثلاً a است، Bold شود تا کاربر ببیند که نتیجه جستجوی اش اینها بوده که شامل کاراکتر a است.

من با حلقه خواستم این کار رو بکنم اما نشد.

khokhan
پنج شنبه 05 تیر 1393, 15:02 عصر
با سلام

من از رویداد textBox1_TextChanged

استفاده می کنم تا اگر کاربر مثلاً a رو وارد کرد، نتایجی که درونشون a وجود داره درون datagridview لیست شود.
حالا می خواهم اگر کاربر، a را در textbox1 وارد کرد، در datagridview، کاراکتر مورد جستجو توسط کاربر که در اینجا مثلاً a است، Bold شود تا کاربر ببیند که نتیجه جستجوی اش اینها بوده که شامل کاراکتر a است.

من با حلقه خواستم این کار رو بکنم اما نشد:لبخند::لبخند:.

.................................................. .......................


GridViewRow gr1 = null;

for (Int32 counter = 0; counter < gridview1.Rows.Count ; counter++)
{
gr1 = gridview1.Rows[counter];
if (counter == 0)
{
gr1.Cells[0].Font.Bold = true;
gr1.Cells[0].Font.Size = 12;
}
else
{
gr1.Cells[0].Font.Bold = false;
gr1.Cells[0].Font.Size = 10;
}

قله بلند
پنج شنبه 05 تیر 1393, 15:43 عصر
من منظورم اینه که اگر کاربر a رو در textBox1 وارد کنه، datagridview1 پر می شه از نتایجی که درونشون a هست. حالا این a در datagridview1، پررنگ شود. من این کدها رو نوشتم ولی از نظر رنگ هم متاثر نمی شه.



private void textBox1_TextChanged(object sender, EventArgs e)
{
#region
int i;
try
{
for (i = 0; i < dataGridView1.RowCount; i++)
{
richTextBox1.Text=dataGridView1.Rows[i].Cells[0].Value.ToString();
if (richTextBox1.Find(textBox1.Text) >= 0)
{
richTextBox1.SelectionColor = Color.Red;
dataGridView1.Rows[i].Cells[0].Value = richTextBox1.Text;
}

}
}
catch(Exception ex)
{
con.Close();
}
finally
{
con.Close();
}
#endregion
}

قله بلند
پنج شنبه 05 تیر 1393, 18:12 عصر
با عرض سلام
من جستجویی انجام دادم. گویا باید richtextbox رو به سلول های datgridview1 اضافه کرد. می شه راهنمایی کنید که باید چه کار کنم؟

قله بلند
جمعه 06 تیر 1393, 12:21 عصر
سلام
من چنین چیزی رو پیدا کردم اما نمی دونم چه طوری می شه کار خودم رو توی این کلاس پیاده کنم

http://barnamenevis.org/showthread.php?64210-نمونه-برنامه-های-کوچک-و-مفيد-در-سي-شارپ&p=621313&viewfull=1#post621313

جدا کننده عداد برای DataGridView و TextBox

قله بلند
دوشنبه 09 تیر 1393, 02:00 صبح
سلام
من خیلی جستجو کردم. حتی یک نمونه کد در codeproject پیدا کردم که بهش ارجاع می دهند اما نمی دونم برای حل مسئله خودم که bold کردن یک زیر رشته در دیتاگرید ویو است باید چه کنم و کجای کلاس را تغییر دهم و چگونه تغییر دهم.
برای مسئله من، کاربر قرار نیست در Richtextbox افزوده شده چیزی وارد کند بلکه این تغییرات توسط برنامه انجام می شود و کاربر فقط bold شدن زیر رشته را مشاهده می کند.