在Form2中:
Report qc=new Report();后,
qc.dateTimePicker1.Value.Date.ToString();
的值怎么是Report页面初始时的值啊。
我已经在Report中更改过日期啦。

解决方案 »

  1.   

    我是在Report页面中先更改的。然后弹出Form2,在Form2中取Report中dateTimePicker1的值,但是还是更改前的值啊,这个是怎么回事啊
      

  2.   

    不是的。
    Report页面打开后dateTimePicker1的值是当天日期。我选择后将日期提前一个月。然后打开Form2,再取Report中dateTimePicker1的值时还是当天日期/这是什么原因啊
      

  3.   

    是的
    真是想不通
    Form1中的dateTimePicker1默认是当前日期,我更改后为2005/03/05后,再打开Form2,在Form2中取Form1的dateTimePicker1的值时就又是当前日期(2005/04/05)了。
    为什么啊?
      

  4.   

    这样
    public class form1 : ....
    {
      public static form1 f1;
      void Mian()
      {
        form1.f1 = new form1();
           Application.Run( f1 );
       }
    }
    form2: form1.f1.SelectDateTime
      

  5.   

    to: hdt(接分接出个星星) 
    还是不行啊。只要我将Form1中的日期改了,然后在弹出的Form2中取Form1的日期值时还是修改前的啊
      

  6.   

    Report_All.cs:
    public static Report_All ra;
    private void Report_All_Load(object sender, System.EventArgs e)
    {
    Report_All.ra = new Report_All();
    }
    Form3.cs:
    private void Form3_Load(object sender, System.EventArgs e)
    {
    string sql = null;
    sql = " select distinct a.xh as 序号 ,a.name as 名称 ,a.num as 库存数量 ,sum(b.num) as 销售总数  ,sum(b.je) as 销售总额 ,sum(b.lr) as 利润   from s_kc a ,s_xs b "+
    " where a.xh = b.xh   ";

    if( Report_All.ra.dateTimePicker1.Checked  && Report_All.ra.dateTimePicker2.Checked )
    {
    sql = sql + " and ( b.sj between @sj1 and @sj2) ";
    }
    sql = sql + " group by a.xh ,a.name ,a.num ";
    OleDbDataAdapter da = new OleDbDataAdapter( sql ,cn );
    if( Report_All.ra.dateTimePicker1.Checked  && Report_All.ra.dateTimePicker2.Checked )
    {
    da.SelectCommand.Parameters.Add("@sj1",OleDbType.DBDate);
    da.SelectCommand.Parameters.Add("@sj2",OleDbType.DBDate);
    da.SelectCommand.Parameters["@sj1"].Value = Report_All.ra.dateTimePicker1.Value.Date.ToString();
    da.SelectCommand.Parameters["@sj2"].Value = Report_All.ra.dateTimePicker2.Value.Date.ToString();
    }
    DataSet ds = new DataSet();
    da.Fill(ds,"report");
    dataGrid1.DataSource = ds.Tables["report"];
    }
      

  7.   

    Report_All中有个dateTimePicker1,默认是当天日期,我选择改变后。在弹出的Form3中取到的值换是当天的日期,为什么不是改变后的日期啊?
      

  8.   

    这样
    public class form1 : ....
    {
      public static form1 f1;
      void Mian()
      {
        form1.f1 = new form1();
           Application.Run( f1 );
       }
    }
    form2: form1.f1.SelectDateTime
      

  9.   

    Form2调用Form1的时候那个Date是不是又给实例化了一次干脆把这个Date更改后放到Session里面,然后从Session里面取值