[英]How to call method having parameters (object sender, EventArgs e )
在我的wpf应用程序中,我定义了此方法的MonthView类,该类从日历中获取选定的日期,并显示该日期的相应dayView窗口。
public void calItemSelectedDate(object sender, SelectionChangedEventArgs e)
{
DateTime d;
if (sender is DateTime)
{
d = (DateTime)sender;
}
else
{
DateTime.TryParse(sender.ToString(), out d);
}
DayView Activity = new DayView(d);
Activity.Show();
this.Hide();
}
现在,在我的CustomView类中,我创建了dayView实例,希望在该实例中传递所选日期。
DateTime p = Globals._globalController.getMonthViewWindow.calItemSelectedDate(object s, EventArgs e); // here it shows error
DayView d = new DayView(DateTime p);
因此,请提出调用该“ calItemSelectedDate”方法的方法,以便我可以将适当的datetime参数传递给DayView。
引用的方法是事件处理程序,而不是直接调用的最佳选择。 在这种情况下,我要做的是:
//A PROPERTY THAT SAVES SELECTED DATE VALUE
public DateTime SelectedDate {get;set;}
//A METHOD THAT SHOWS ACTIVITY
public void ShowActivity(DateTime date) {
DayView Activity = new DayView(date);
Activity.Show();
this.Hide();
}
public void calItemSelectedDate(object sender, SelectionChangedEventArgs e)
{
DateTime d;
if (sender is DateTime)
{
d = (DateTime)sender;
}
else
{
DateTime.TryParse(sender.ToString(), out d);
}
SelectedDate = d;
ShowActivity(d);
}
并在您想上课的地方上:
DateTime p = Globals._globalController.getMonthViewWindow.SelectedDate;
DayView d = new DayView(p);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.