Sto cercando di visualizzare un DataGridView semplice collegato a un DataTable e voglio, in definitiva, la mia prima colonna in DataTable essere la cella di intestazione di riga per DataGridView. A questo punto mi accontento di avere qualsiasi valore nella cella dell'intestazione di riga. Posso visualizzare DataGridView con tutte le mie righe e colonne e con le celle di intestazione di colonna, ma nessuna cella di intestazione di riga. Controllo il valore nella riga.HeaderCell.Value e i dati che ho inserito sono lì. Controllo row.HeaderCell.Displayed ed è falso, ma questo è di sola lettura, quindi non posso renderlo vero. Come faccio a visualizzare la cella dell'intestazione di riga?DataGridView cella di intestazione riga di visualizzazione
Ecco un semplice esempio di ciò che ho cercato di arrivare a questo lavoro:
DataTable table = new DataTable();
for (int i = 0; i<10; i++)
{
table.Columns.Add(new DataColumn("column-" + i));
}
for (int i = 0; i < 10; i++)
{
DataRow theRow = table.NewRow();
for (int j = 0; j < 10; j++)
theRow[j] = i + "-" + j;
table.Rows.Add(theRow);
}
dataGridView1.DataSource = table;
dataGridView1.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.AutoSizeToDisplayedHeaders;
int rowNumber = 1;
foreach (DataGridViewRow row in dataGridView1.Rows)
{
if (row.IsNewRow) continue;
row.HeaderCell.Value = "Row " + rowNumber;
rowNumber = rowNumber + 1;
}
dataGridView1.AutoResizeRowHeadersWidth(
DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders);
Questo accende e spegne la cella di intestazione nella sua interezza, il mio problema era che il valore che ho inserito nella cella non veniva mostrato nel display. Capito fuori di seguito. –