Есть 2 класса:
1)
class Project
{
string ProjectName
int OwnerId
string OwnerName
}
2)
Class Owner
{
string OwnerName
int OwnerId
}
Есть DataGridView, который состоит из 2 ух полей:
ProjectName, которое является обычным текстовым полем и OwnerName, которое является ComboBox'ом.
На DataGridView биндится List, а на ComboBox в DataGridView биндится List .
Я хочу, выбирая из ComboBox'a элемент, обновлять этими значениями элемент в
List (Присваивать OwnerId и OwnerName).
Подскажите, как это можно сделать?
Я смастерил вот такой костыль и на каждое изменение, я должен руками вытаскивать эти значения из DataSet, который подключен к ComboBox.
private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
if (dataGridView1.RowCount == 0)
{
return;
}
var editedItem = (Project)dataGridView1.Rows[e.RowIndex].DataBoundItem;
var value = ((DataGridViewComboBoxCell) dataGridView1.Rows[e.RowIndex].Cells[nameof(OwnerName)]).Value;
var result = ((List<Owner>) Owner.DataSource).Single(x => x.OwnerName == value);
editedItem.OwnerId = result.OwnerId;
editedItem.OwnerName = result.OwnerName;
}
Подскажите, можно ли как-нибудь менее костыльно сделать?
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Существует библиотека DataGridAutoFilter для winforms, которая вешает фильтр на столбец в datagridviewЯ обновляю datagridview так :
Ранее считал, что переопределять Equals для своих классов можно и нужноНо натолкнулся на иную информацию, что переопределение может привести...
Имеется набор gameobject'ов который будут работать как кнопкиНа них висит box коллайдер и также кодом вешается pointclick триггер (вызывает функцию...
Допустим, имеется datagridview, где есть 2 колонки с типом datagridviewcombobox(далее cb)