我正在使用一個相當大的DataGrid綁定到Datatable。我的目標是根據單元格中的數據對單元格組進行着色。基於Datagridview C#中的內容着色組單元格#
我想要datagrid爲包含值的所有單元格着色,然後在檢測到新值時切換顏色並在整個表格中重複此操作。
以下是對我的工作表中的一個例子:
Contract ID:
123456 //Top of the contract, color all cells in the contract blue
123456 //blue
123456 //blue
123456 //blue
456789 //New contract, color all these cells green
456789 //green
456789 //green
987654 //Another new contract color all these blue (or another color) again
etc...
我已經試過類似的東西下面,但無濟於事...
for (int i = 0; i < myDataGridView.Rows.Count; i++)
{
if (i > 0)
{
if (myDataGridView.Rows[i].Cells["contract_id"].Value != myDatagridView.Rows[i-1].Cells["contract_id"].Value)
{
myDataGridView.CurrentRow.Cells["contract_id"].BackColor = Color.Blue;
}
}
}
我不知道從哪裏開始,我已經嘗試循環遍歷行並檢查值,但這最終會導致性能和速度的崩潰,並且不會給我所尋找的結果。任何建議將不勝感激。
請記住,您可以使用DataGridViewRow.DataBoundItem屬性訪問「當前」數據行。您可以通過yourDataGridView1.Rows [e.RowIndex]獲取當前的datagridviewrow。 – Luferogo