我希望我的DataGridView
突出顯示具有選定單元格的任何行的行標題。任何方式來做到這一點?突出顯示具有任何選定單元格的行的行標題
(標準行爲似乎只在選中整行單元格時突出顯示行標題)。
我已經試過什麼:
我看過了DataGridView中反編譯源,並從我可以告訴什麼(這絕對可能是錯誤的),它強調基於是否選擇了一個DataGridViewRow頭。我不知道如何設置所選的行,而沒有實際選擇整行
我希望我的DataGridView
突出顯示具有選定單元格的任何行的行標題。任何方式來做到這一點?突出顯示具有任何選定單元格的行的行標題
(標準行爲似乎只在選中整行單元格時突出顯示行標題)。
我已經試過什麼:
我看過了DataGridView中反編譯源,並從我可以告訴什麼(這絕對可能是錯誤的),它強調基於是否選擇了一個DataGridViewRow頭。我不知道如何設置所選的行,而沒有實際選擇整行
我之前完成此操作的方式是處理CellStateChanged
事件,檢查受影響的單元格的行中的單元格,並設置行標題相應。
private void DataGridView1_CellStateChanged(object sender, DataGridViewCellStateChangedEventArgs e)
{
bool selected = false;
foreach (DataGridViewCell cell in e.Cell.OwningRow.Cells)
{
if (cell.Selected)
{
selected = true;
break;
}
}
e.Cell.OwningRow.HeaderCell.Style.BackColor = selected ?
this.dataGridView1.RowHeadersDefaultCellStyle.SelectionBackColor :
this.dataGridView1.RowHeadersDefaultCellStyle.BackColor;
}
你需要設置以下的這段啓用這些變化,因爲explained here:
this.dataGridView1.EnableHeadersVisualStyles = false;
未顯示:還要考慮着色頭小區Row[0]
當一切都被初始化。
這看起來很有前途。沒有時間測試,但我會接受它!感謝幫助! – CoderBrien
你在初始化時做了什麼特別的事嗎?出於某種原因,我的網格最初會顯示所有選中的行標題,然後根據需要進行操作。我認爲發生的事情是網格在初始顯示期間在內部選擇第一個單元格,但我不確定所有的行首是如何在開始時選中的。 – CoderBrien
我得到它的工作,但我不得不防止執行邏輯作爲'OnBindingContextChanged'事件的結果。而且,它很甜蜜! – CoderBrien
你有什麼試過?你有沒有看過CellClick事件處理程序或SelectionChanged事件突出顯示相關的標題? – AgapwIesu
問題已更新。 – CoderBrien