Короче говоря: Да, вам нужно восстановить DataBinding, потому что TextBox имеет ссылку на старый объект.
Но чтобы сделать это немного более надежным, вам, возможно, следует использовать BindingSource для вашей DataBinding. Чтобы заставить это работать, вы должны открыть свою форму в режиме конструктора.
- Выберите ваш TextBox и откройте окно свойств
- Просмотрите категорию Данные и щелкните крест слева от свойства (DataBindings)
- Нажмите раскрывающуюся кнопку рядом со свойством Текст
- В раскрывающемся списке выберите Добавить источник данных проекта
- В мастере выберите Объект и в следующем типе вашего объекта
Теперь вы получите новый объект в вашей форме (например, productBindingSource ), который связан с текстом вашего TextBox. И последнее, но не менее важное: вы должны прикрепить свой объект, используя следующий код:
productBindingSource.DataSource = product;
Но также это решение не помогает против повторного связывания, но все, что вам нужно сделать сейчас:
product = new Product();
productBindingSource.DataSource = product;