将表单对象值传递给静态方法

时间:2010-12-30 18:02:30

标签: c# forms object static-methods

我需要获取一个表单对象值并将其传递给静态方法:

 public void SetCalendarStartSafe(DateTime startDateSafe)
 {
     startDateSafe = calendarStart.Value;
 }   

 private static DataTable GetData()
 {
     frmMain frm = new frmMain();
     DateTime startDate = new frmMain();
     frm.SetCalendarStartSafe(startDate);
 }

但是,即使表单上指定的日历日期不同,每当我尝试这种方法时,我仍然会获得今天的当前日期。如何从原始frmMain对象中获取用户指定的日历日期?提前感谢任何指导。

2 个答案:

答案 0 :(得分:0)

你将从代码中的某个地方调用GetData()是非静态的吗?比如来自Form中的某些事件..在那个事件中将参数传递给静态方法GetData(DateTime ..)

答案 1 :(得分:0)

public void SetCalendarStartSafe(DateTime startDateSafe)
{
    // wrong:
    // startDateSafe = calendarStart.Value;
    // right:
    calendarStart.Value = startDateSafe;
} 

在那里,只需交换这两个。作业的目的地在左侧。