Próbuję utworzyć DataTable
i powiązać go z DataGridView
. Działa, ale nie mogę ustawić nagłówków kolumn za pomocą właściwości Caption
. Wyświetla nagłówki, używając zamiast tego ColumnName
("Miasto"). MSDN mówi, żeDlaczego DataColumn.Caption nie działa?
„Można użyć właściwości Caption wyświetlać opisową lub przyjazną nazwy dla DataColumn”.
Oto mój kod:
DataColumn dc = new DataColumn("City", typeof(string));
dc.Caption = "Город";
DataTable dt = new DataTable();
dt.Columns.Add(dc);
DataRow row = dt.NewRow();
row["City"] = "Moscow";
dt.Rows.Add(row);
datagridview.DataSource = dt;
To nie działa, jeśli twoja dataTable pochodzi z mocno wpisanego zestawu danych. Myślałem, że jest błąd, że napisu nie można odzyskać z kodu; np. dt.Columns (n) .Caption faktycznie pobiera dt.Columns (n) .ColumnName, mimo że wyraźnie ustawić Caption, aby być różnym od Name w projektancie xsd. – joedotnot
Myślę, że powinieneś użyć 'dt.Columns [col.DataPropertyName] .Caption' zamiast tego. To zapewni, że jest on połączony z poprawną kolumną w 'DataTable'. –