我的listview表里有3个字段,姓名,日期,金额,列表上面有3个相对应的2个text文本框和一个datetiempicker控件,如何实现,当我随便点击一条数据的时候,上面的3个控件显示相应的数据呢,最难的是那个时间控件了,如何让那个控件上的时间就是我当前选中的这条数据上时间呢?

解决方案 »

  1.   

                string s;
               DateTime dt;
               if (DateTime.TryParse(s, dt) == true)
               {
                   this.dateTimePicker1.Value = dt;
               }
    s就是你点击listview后获取的日期的字符串。
      

  2.   

    DateTime.TryParse(s, dt) == true   什么意思?
      

  3.   

    DateTime.TryParse(string str, out datetime dt)
    是一个将字符串转换为时间类型的方法,你可以MSDN一下
    这个方法的返回值为bool类型,如果转换成果则返回true否则返回false
    转换成功的日期则存放在dt中这个方法1楼貌似漏了out,貌似应该是这样的说
    DateTime.TryParse(s, out dt) == true
      

  4.   

    为什么要加out呢,我后面不怎么需要用dt哦,或者说这个是另外一个作用呢?
      

  5.   


    看4楼的说明啊,前面确实少了个out.
    dt只是个临时的变量,只是为了将值赋给dateTimePicker1
    this.dateTimePicker1.Value = dt;
    DateTime.TryParse(string str, out datetime dt)==true
    表示将字符串str成功的转化为datetime的dt,如果为false,则表示转换失败,字符串str不是时间格式的字符串,像str="abc";这样的就会得到false
      

  6.   

    string timeStr;
    dateTimePicker1.Value = Convert.ToDateTime(timeStr);这里的timeStr就是你从listview中获得的日期字符串。