В button1_Click
вы создаете новый экземпляр класса fmHome
. Это отличный экземпляр от экземпляра fmHome
, который его создал, поэтому у него нет выделенной строки в dgCases
. Вызов GetCaseID()
в этом случае не вернет то, что вы ожидаете.
Ваш обработчик button1_Click
должен иметь возможность вызывать GetCaseID()
в форме, которая его открыла. Очень простой способ - добавить свойство, подобное этому, на Form2
:
public fmHome fmHomeParent { get; set; }
Затем, когда вы откроете свой экземпляр Form2
, сделайте следующее:
private void btnEvLvlUserSelect_Click(object sender, EventArgs e)
{
Form2 form2= new Form2();
form2.fmHomeParent = this;
form2.ShowDialog();
}
Таким образом, в вашем обработчике button1_Click
вы можете получить доступ к этому экземпляру вместо создания нового:
private void button1_Click(object sender, EventArgs e)
{
//Take selected case information
textBox1.Text = fmHomeParent.GetCaseID();
}
Надеюсь, это поможет!