У меня есть winform vb .net, который отображается другими формами. У меня есть frmA.vb, frmB.vb, frmC.vb и frmD.vb.
Это все формы могут вызывать frmItem.vb. frmItem.vb позволяет пользователю выбрать элемент из базы данных, этот элемент отправляется путем вызова свойства Set в родительском элементе.
i.e.
Я открываю frmA, нажимаю кнопку (что-то вроде:)
fi = new frmItem(frmA) 'frmItem has 4 New() methods, frmA.. b... c and d
'i need to pass the correct parent.
fi.showModal()
Итак, когда я добавляю элемент, он вызывает
fA.addItem(item_id)
Это работает нормально, я сомневаюсь в оптимизации, потому что я продублировал frmItem; одна копия управляла frmA и frmB, а другая — frmC и frmD.
i.e.
в frmItem1, когда я отправил элемент, я использую:
private fB as frmB
private fA as frmA
if parentFrmA is nothing then
'Is frmB
fB.addItem(item_id)
else
'Is frmA
fA.addItem(item_id)
end if
И на frmItem2:
private fC as frmC
private fD as frmD
if parentFrmC is nothing then
'Is frmD
fD.addItem(item_id)
else
'Is frmC
fC.addItem(item_id)
end if
Если я изменяю frmItem1, я должен изменить frmItem2 и наоборот, потому что они должны выглядеть и действовать как единое целое.
Все четыре формы имеют одно и то же свойство Set, но поскольку это разные формы, я не могу использовать уникальный класс формы в frmItem.
Возможно ли, что одна форма может легко управлять несколькими родителями??
Если вам нужна дополнительная информация, дайте мне знать. Спасибо