, ben bir olay işleyicisi kayıt ediyorum:Olay İşleyici boş <code>MainWindow</code> Yapıcıda
public partial class MainWindow : Window, INotifyPropertyChanged
{
public MainWindow()
{
InitializeComponent();
pageViewDocText = new PageViewDocText();
framePageDocFieldDetail.Content = pageViewDocText;
pageViewDocText.NewPageIRPRO += new GabeLib.SearchCls.DocEventHandler(ViewIPRO);
}
protected void ViewIPRO(string IRPOlink) // ...
}
public partial class PageViewDocText : Page, INotifyPropertyChanged
{
public event GabeLib.SearchCls.DocEventHandler NewPageIRPRO;
private void btn_PageBreakNext(object sender, RoutedEventArgs e)
{
// this fires but NewPageIRPRO is null
if (NewPageIRPRO != null)
{
NewPageIRPRO("dummylink");
}
}
}
Ama PageViewDocText
yılında, NewPageIRPRO
null yanlış yapıyorum
?
PageViewDocText
'dan, MainWindow.ViewIPRO
numaralı telefonu aramak istiyorum.
Bu olay işleyicisi patlar ve pageViewDocText.NewPageIRPRO altında çizgisini kayıtlı olduğu + = sen (değil listelenmiştir) başka bir sınıftan bir olay aradığınız ve eksik bir temsilci olduğu gibi
App.StaticGabeLib.Search.NewDocIRPRO += new GabeLib.SearchCls.DocEventHandler(ViewIPRO);
'PageViewDocText' yapıcı yangın o olay:
bu kodu deneyin? Bu hata ayıklaması kolaydır; sadece çağrı yığına bak. Saldırı kodunu terk etmedikçe, etkinliğin abonelikten sonra null olmaması mümkün değildir. –Bizi, NewPageIRPRO'nun null olduğu yerden aldığınız kod satırını göstermeniz gerektiğini düşünüyorum. –
@EdS. Düğme olay işleyicisi bu olayı tetiklemez. Olay işleyicisinin neden boş olduğunu da kaybettim. GabeLib'de (saf bir sınıf) olay işleyicisini aynı şekilde görüyorum ve iyi çalışıyor. – Paparazzi