I’m trying to display in column info from parent dataTable:
Country (Id int, Name nvarchar)
State (Id int, Name nvarchar, CountryId)
Province (Id int, Name nvarchar,StateId)
City (Id int, Name nvarchar,ProvinceId)
Now I can display name of province + name of state, but I also want to display and sort by nameOfCountry
There is a first problem:
There is no such column in EnumProvince dataTable
dictionaryData.EnumProvince.DefaultView.Sort = dictionaryData.EnumProvince.EnumStateIdColumn.ColumnName + "," + dictionaryData.EnumState.EnumCountryIDColumn.ColumnName ;
for (int i = 0; i < dictionaryData.EnumProvince.DefaultView.Count; i++)
{
DictionaryData.EnumProvinceRow row1 = ((DictionaryData.EnumProvinceRow)dictionaryData.EnumProvince.DefaultView[i].Row);
DataRow row2 = dataTable2.NewRow();
row2[0] = row1.EnumProvinceID;
//There is a second problem: row2 hasn't EnumCountryRow.
row2[1] = row1.Name + "(" + row1.EnumStateRow.Name +" - " + row1.EnumCountryRow.Name + ")";
dataTable2.Rows.Add(row2);
}
(dictionaryDataGridView.Columns[2] as RemindableDataGridViewComboBoxColumn).DataSource = dataTable2;
(dictionaryDataGridView.Columns[2] as RemindableDataGridViewComboBoxColumn).DisplayMember = dataTable2.Columns[1].ColumnName;
(dictionaryDataGridView.Columns[2] as RemindableDataGridViewComboBoxColumn).ValueMember = dataTable2.Columns[0].ColumnName;
dictionaryDataGridView.Columns[2].DataPropertyName = "EnumProvinceId";
Is there any simple way to add this feature to this grid ?
Best regards
This is my solution but is very ugly :/