我试图将事件从一个控件触发到另一个控件,但它保持null值。我已经声明了一个委托和事件,并创建了一个方法来检查第二个控件上的事件是否为null。该方法在按钮单击时调用,并且应该通知第一个控件执行某些操作(刷新网格数据)
//Child form
public partial class InventuraForm
{
SqlClient client = null;
public delegate void NekiDelegat();
public event NekiDelegat MojEvent;
public void SendEvent()
{
if (MojEvent != null) MojEvent(); //MojEvent keeps showing null
}
//Saving data and exiting the control
public void tsbSpremiZatvori_Click(object sender, EventArgs e)
{
//some code
SendEvent();
}
}
//Parent form
public partial class InventuraFormPregled
{
InventuraForm _inv = null;
public InventuraFormPregled()
{
InitializeComponent();
_inv = new InventuraForm();
_inv.MojEvent += new InventuraForm.NekiDelegat(LoadGridData);
}
//refresing the data on grid
private void LoadGridData()
{
//some code
}
}
我很乐意提供任何帮助,谢谢。
答案 0 :(得分:0)
通过_inv .Show()方法打开子窗体。