Выпадающий список в выпадающем списке не заполняется из строки просмотра данных - PullRequest
0 голосов
/ 30 июня 2019

Я хочу, чтобы при нажатии строки datagridview мои два текстовых поля и поле со списком заполнялись соответствующими значениями, но два текстовых поля заполнялись точно, но раскрывающийся список категорий не заполнялся.

Мой код C #

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
    if (e.RowIndex != -1 && e.ColumnIndex !=-1)
    {
        //edit = 1;
        DataGridViewRow row = dataGridView1.Rows[e.RowIndex];
        proID = Convert.ToInt32(row.Cells["proIDGV"].Value.ToString());
        proTxt.Text = row.Cells["nameGV"].Value.ToString();
        barcodetxt.Text = row.Cells["barcodeGV"].Value.ToString();
        catDD.SelectedValue = row.Cells["catIDGV"].Value.ToString();// not working properly due to which edit button is not working
       // catDD.SelectedItem = row.Cells["catGV"].Value.ToString();//Also Write this line of code but not produce the desire result
        MainClass.Disabled(leftPanel);
    }
}

enter image description here

1 Ответ

0 голосов
/ 30 июня 2019

Чтобы раскрывающийся список категорий, представляющий собой комбинированный список, имел SelectedItem или SelectedValue, у вас уже должны быть все возможные категории в свойстве «items», иначе программирование не сможет выбрать категорию из ниоткуда.Чтобы выбрать элементы, которые не существуют, вам нужно сначала добавить элемент, или, если элементы вам не нужны, вы можете просто использовать:

catDD.Text = row.Cells["catIDGV"].Value.ToString();

Хотя я бы не рекомендовал делать это таким образом,

Другой способ заключается в том, что вы можете добавлять элементы, делая это (это то, что я рекомендую):

Редактировать: вы сначала добавляете элемент, затем выбираете его.

string item = row.Cells["catIDGV"].Value.ToString(); // Your selected item in DataGridView
catDD.Items.Add(item); // Add the item
catDD.SelectedItem = item; // Select the item

Редактировать: Также с помощью простой MessageBox.Show () проверить, если ваша информация о строке вызывается ( row.Cells ["catIDGV"]. Value.ToString () ) отправляет что-либо обратно.

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