Control DataBindings doesn't work as expected

64 views Asked by At

I have Dto like this

public partial class DepartmentDto
{
public int IdDepartment { get; set; }
public string NameDepartment { get; set; }
public string DescriptionDepartment { get; set; }
}

And I have this method to binding controls

 private DepartmentDto departmentDto = new();
 private void BindingControls()
{
    txtID.DataBindings.Add(new Binding("EditValue", departmentDto, nameof(departmentDto.IdDepartment), true, DataSourceUpdateMode.OnPropertyChanged));
    txtTitle.DataBindings.Add(new Binding("EditValue", departmentDto, nameof(departmentDto.NameDepartment), true, DataSourceUpdateMode.OnPropertyChanged));
    txtDescription.DataBindings.Add(new Binding("EditValue", departmentDto, nameof(departmentDto.DescriptionDepartment), true, DataSourceUpdateMode.OnPropertyChanged));
}

When I change the value of any text boxes the departmentDto get it's values whiteout any problems.
But When I change departmentDto on gridview double click event like this

 private void gridView1_DoubleClick(object sender, EventArgs e)
{
    departmentDto = listDepartmentDto.Current as DepartmentDto;
}

The departmentDto get it's value but the text boxes doesn't reflect this changes
Is there automatic way to do it or do I need to fill it out like this

     txtID.EditValue = departmentDto.IdDepartment;
     txtTitle.EditValue = departmentDto.NameDepartment;
     txtDescription.EditValue = departmentDto.DescriptionDepartment;
0

There are 0 answers