partial class F1 : Form
{
private CPriceList m_PriceList; // объект некого класса
/// здесь же в конструкторе этот объект инициализируется
public F1()
{
m_PriceList = new ...
InitializeComponent();
}
private void ShowForm2()
{
MessageBox.Show(m_PriceList.Name);
F2 fe = new F2(m_PriceList);
fe.ShowDialog();
MessageBox.Show(m_PriceList.Name);
}
}
partial class F2 : Form
{
private CPriceList m_PriceList;
public F2(CPriceList pricelist)
{
m_PriceList = pricelist;
m_PriceList = null; /// здесь обнуляем ссылку
InitializeComponent();
}
}
Почему результат обоих MessageBox'ов одинаковый? Я полагал, что второй должен вывалиться с ошибкой. Ведь между формами передаётся ссылка, которая во второй форме меняется. Почему это не отображается в первой форме?