Я SQL DBA с низким уровнем квалификации в VS C# и Winforms. Я изо всех сил пытался добавить поле со списком в столбец DataGridView несколько дней и отказался. У меня есть dat1 dat1 и datagridview dg1. dg1.Datasource = dt1; dt1 является членом набора данных ds1. Я предоставляю комбинированные элементы из массива.Как добавить ComboBox в WINFORM datagridview привязан к datatable
Я пробовал автогенерирование true и false.
Если автогенерация = правда я получаю два столбца с тем же именем с 1 со списком, и это в неправильном положении колонки, и я получаю правильные данные из dT1
Если ложь, и я программно определить столбцы для DG1, я дон Не получайте данные из dt1.
Каким должен быть мой код и какие возможные привязки или свойства отсутствуют, поэтому я добавляю комбинированное поле для «GRADE» в позиции 4-го столбца, а dg1 заполняется из dt1 и комбо из массива.
Полностью расстроен после чтения десятков блогов и попыток в течение нескольких дней. Пожалуйста помоги.
private DataGridViewComboBoxColumn CreateComboBox()
{
DataGridViewComboBoxColumn combo = new DataGridViewComboBoxColumn();
{
combo.Name = "comboColumn";
combo.HeaderText = "Grade";
ArrayList drl = new ArrayList();
drl.Add("GS1");
drl.Add("GS2");
drl.Add("WG1");
drl.Add("WG2");
combo.Items.AddRange(drl.ToArray());
combo.DataSource = drl;
//combo.ValueMember = "EmployeeID";
//combo.DisplayMember = "Grade";
//combo.DataPropertyName = "Grade";
}
return combo;
}
public Employee()
{
InitializeComponent();
WindowState = FormWindowState.Maximized;
Ds1 = new DataSet("ds1");
Dt1 = new DataTable("dt1");
ds1.Tables.Add(dt1);
dt1.Columns.Add("EmployeeID");
dt1.Columns.Add("FirstName");
dt1.Columns.Add("LastName");
dt1.Columns.Add("Grade");
dt1.Columns.Add("DOB");
//initialize datagridview
Dg1.AutoGenerateColumns = true;
//dg1.Columns.Add("column4", " EmployeeID ");
// dg1.Columns.Add("column4", " FirstName ");
// dg1.Columns.Add("column4", " LastName ");
Dg1.Columns.Add(CreateComboBox());
// dg1.Columns.Add("column5", " DOB ");
Dg1.DataSource = dt1;
}