Thumbs up High Light سطرهای دیتاگرید ویو ...
سلام به همه ...
جهت های لایت کردن دیتاگرید ویو با آمدن موس روی هر سطر ....
کد PHP:
public Listcam() {
InitializeComponent();
}
private DataGridViewCellStyle HighlightStyle;
private int HighlightedRowIndex = -1;
private void SetRowStyle(DataGridViewRow row, DataGridViewCellStyle style)
{
foreach (DataGridViewCell cell in row.Cells)
{
cell.Style = style;
}
}
در رویداد CellMouseEnter :
کد PHP:
if (e.RowIndex == HighlightedRowIndex) return; if (HighlightedRowIndex >= 0)
{
SetRowStyle(dataGridView1.Rows[HighlightedRowIndex], null);
}
HighlightedRowIndex = e.RowIndex;
if (HighlightedRowIndex >= 0)
{
SetRowStyle(dataGridView1.Rows[HighlightedRowIndex], HighlightStyle);
}
و در رویداد CellMouseLeave :
کد PHP:
if (HighlightedRowIndex >= 0) {
SetRowStyle(dataGridView1.Rows[HighlightedRowIndex], null);
HighlightedRowIndex = -1;
}
تا حالا که هیچ اتفاقی نیوفتاده !!!
در روی داد لود فرم : (جهت تعیین رنگ و فونت و ...)
کد PHP:
HighlightStyle = new DataGridViewCellStyle(); HighlightStyle.ForeColor = Color.Red;
HighlightStyle.BackColor = Color.Yellow;
HighlightStyle.Font = new System.Drawing.Font(dataGridView1.Font, FontStyle.Bold);
---------------
دوستان اگر بیشتر از یک دیتاگرید ویو داشته باشید می بایست دستورات رویداد موس اینتر و موس لیو در دیتاگریدویو بعدی مجددا نوشته شود و نام دیتاگریدویو در خط زیر تغییر کند :
کد PHP:
HighlightStyle.Font = new System.Drawing.Font(dataGridView1.Font, FontStyle.Bold);