У меня есть объект DataGridView, к которому я привязал список объектов (типа Asset), возвращаемых из запроса к базе данных.
Я программирую на VB, используя Visual Studio 2005.
Я хочу получить две копии связанного объекта (называя их oldAsset и newAsset) из выбранной строки в DataGridView, обновить newAsset на основе входных данных из других элементов управления в форме и передать как oldAsset, так и newAsset функции, которая обновит соответствующую запись в БД.
Я пытаюсь схватить две копии вот так:
Dim currentRow As DataGridViewRow = Me.AssetDataGridView.CurrentRow
Dim newAsset As Asset
newAsset = currentRow.DataBoundItem
Dim oldAsset As Asset
oldAsset = currentRow.DataBoundItem
Открытие окна наблюдения на oldAsset и newAsset указывает на то, что в этот момент извлекаются соответствующие значения. Но когда я пытаюсь изменить свойство просто newAsset, например
newAsset.CurrentLocationID = cboLocations.SelectedValue
Я вижу, что соответствующее значение в oldAsset также изменилось. Это не то, что я хочу, но это, очевидно, то, что я приказываю компьютеру делать.
Как мне сказать компьютеру делать то, что я хочу?
Заранее спасибо!