首页 > 解决方案 > 如何动态设置 DatePicker 的值?

问题描述

我的表单中有一个对象 datePicker 来显示出生日期。我从我的数据库中读取出生日期(日期是格式为“yyyyMMdd”的字符串)我尝试使用以下代码设置在 datePicker 中读取的日期,但出现异常。我做错了什么 ?!?

birth.Value= new DateTime(extractDate(r["H1DTN0"].ToString())); 


public long extractDate(String s)
    {
        String y = "";
        String m = "";
        String d = "";
        if(s.Length==8)
        {
            int index = 0;
            foreach(char c in s)
            {
                if (index <= 3) y += c;
                else if (index >3 && index <= 5) m += c;
                else if (index >5) d += c;
                index++;
            }
            String data = y + m + d;
            long l = 0;
            long.TryParse(data,out l);

            return l;
        }
        else
        {

            return 0;


        }



    }

标签: c#datepicker

解决方案


我找到了解决方案:

DateTime dtbIRTH = DateTime.ParseExact(extractDate(r["H1DTN0"].ToString()), "yyyyMMdd", CultureInfo.InvariantCulture);
                    birth.Value= dtbIRTH;

使用 DateTime.ParseExact 并指定它完美工作的日期格式。


推荐阅读