11
我有一個DataGridView,其中每行的背景根據數據綁定項目而不同。雖然,當我選擇一行時,我不能再看到它的原始背景顏色。DataGridView行:選擇半透明選擇或行邊框
爲了解決這個問題,我曾經想過兩種解決方案:
我可以做的選擇半透明,從而可以查看兩個選擇的行具有不同的背景顏色。
或;我可以完全移除選擇顏色,並在選定的行周圍繪製邊框。
什麼選項更容易,我該怎麼做?
這是一個WinForm應用程序。
編輯:我結束了使用一些代碼的,漂泊
private void dgv_RowPrePaint(object sender, DataGridViewRowPrePaintEventArgs e)
{
if (dgv.Rows[e.RowIndex].Selected)
{
var row = dgv.Rows[e.RowIndex];
var bgColor = row.DefaultCellStyle.BackColor;
row.DefaultCellStyle.SelectionBackColor = Color.FromArgb(bgColor.R * 5/6, bgColor.G * 5/6, bgColor.B * 5/6);
}
}
這給出了一個半透明的選擇顏色的印象。謝謝你的幫助!
我給了這個鏡頭,它很好。然後它出現了一個新問題 - 透明的選擇顏色看起來真的很難看(文本是舊文本和東西,很難解釋;))排序後,所以我會尋找另一種解決方案。 – 2010-12-16 12:33:43
我用你的代碼來創建一個半透明的選擇顏色 - 請參閱編輯。謝謝你的幫助! – 2010-12-17 12:45:18