Проблема привязки значений в выпадающем списке внутри сетки данных - PullRequest
1 голос
/ 19 мая 2011

Я занимаюсь разработкой приложения для Windows, в котором мне нужно связать комбинированные столбцы внутри таблицы данных со значениями из таблицы [Attendance_type].И источник данных этого представления данных будет из [Таблица сотрудников].

В настоящее время я делаю это, используя этот код.

dgvEmployee.Columns.Clear();
                dgvEmployee.AutoGenerateColumns = false;

                DataGridViewTextBoxColumn branchcolumn = new DataGridViewTextBoxColumn();
                branchcolumn.DataPropertyName = "Name";
                branchcolumn.HeaderText = "Employee Name";
                branchcolumn.Name = "Name";
                branchcolumn.Width = 200;
                dgvEmployee.Columns.Add(branchcolumn);

                var metaattend = from Metaatt in dataDC.Metaattend
                                 where Metaatt.Status == true
                                 orderby Metaatt.Metaname
                                 select Metaatt;
                List<Metaattend> obj_ma = new List<Metaattend>();
                obj_ma = metaattend.ToList();

                var Empvar = from Emp in dataDC.Employees
                             join dept in dataDC.Dept on Emp.Deptid equals dept.Id
                             join branch in dataDC.Branch on Emp.Branchid equals branch.Id
                             where Emp.Status == true & Emp.Name.Contains(txtbranch.Text)
                             & (Emp.Deptid == Convert.ToInt64(cmbDept.SelectedValue) | cmbDept.SelectedValue.ToString() == "0")
                             & (Emp.Branchid == Convert.ToInt64(cmbBranch.SelectedValue) | cmbBranch.SelectedValue.ToString() == "0")
                             orderby Emp.Name
                             select new { Emp.Id, Emp.Name };
                DataTable dt_employee = new DataTable();
                using (clsGeneral obj_gen = new clsGeneral())
                {
                    dt_employee = obj_gen.LINQToDataTable(Empvar);
                }
                dgvEmployee.DataSource = dt_employee;


                string[] datemonth = cmbMonth.Text.Split('-');
                int i = DateTime.DaysInMonth(Convert.ToInt32(datemonth[1]), GetMonthNo(datemonth[0]));
                for (int j = 0; j < i; j++)
                {
                    DataGridViewComboBoxColumn daycomboColumn = new DataGridViewComboBoxColumn();
                    daycomboColumn.HeaderText = (j + 1).ToString();
                    daycomboColumn.Width = 50;

                    daycomboColumn.DataSource = obj_ma;
                    daycomboColumn.DisplayMember = "Metaname";
                    daycomboColumn.ValueMember = "Id";
                    dgvEmployee.Columns.Add(daycomboColumn);
                }

Используя это, код выполняется успешно, но форма делаетне показывает мне ни одной записи в столбце для выпадающего списка в представлении данных.

Это представление моей формы, когда я нажимаю на выпадающие списки, то также ничего не отображается.

enter image description here

Я видел много постов по этому поводу, но ни один не помог мне.Поскольку все это показывает мне то же самое, что я сделал.

Пожалуйста, помогите узнать, где я совершил ошибку.

Спасибо

1 Ответ

2 голосов
/ 20 мая 2011

Для свойства «Включить редактирование строк» ​​для представления данных было установлено значение false.поэтому он не показывает данные внутри выпадающего списка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...