日历扩展程序日期选择并转换为正确的格式

时间:2013-04-05 07:53:24

标签: c# asp.net calendarextender

我从文本框中选择日历扩展程序的值,我得到的格式为{"MM/dd/yyyy"},但我希望格式为{{ 1}}在另一个文本框中 ({"dd/MM/yyyy"})代码如下所示

txt_actualrightformat.Text

3 个答案:

答案 0 :(得分:2)

DateTime无论格式如何,格式仅用于显示目的。如果您未在wrongformat中找到正确的日期,则可以使用DateTime.ParseExact格式。然后简单地

txt_actualrightformat.Text = wrongformat.ToString("dd/MM/yyyy");

修改

使用DateTime.ParseExcat之类的:

DateTime dt = DateTime.ParseExact(TextBox4.Text, "MM/dd/yyyy", CultureInfo.InvariantCulture);
txt_actualrightformat = dt.ToString("dd/MM/yyyy");

答案 1 :(得分:2)

试试这些

DateTime wrongformat = DateTime.Parse(TextBox4.Text);

txt_actualrightformat.Text =wrongformat.ToString("dd'/'MM'/'yyyy");

 txt_actualrightformat.Text =String.Format(CultureInfo.InvariantCulture, "{0:dd/MM/yyyy}", _wrongformat )

<强>更新

我认为 TextBox4中的日期确实存在错误格式 :-)
请注意“22/3/2013”​​符合格式“d / M / yyyy”与格式“dd / MM / yyyy不符“即可。 - “dd / MM / yyyy”应该“22/03/2013”​​

DateTime dt;

if(DateTime.TryParseExact(TextBox4.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture,
                           DateTimeStyles.None, out td))
{
  // Valid date used in `TextBox4` (NOTE : dd/MM/yyyy)!, you can use dt now as i explained above!.:-)
}

答案 2 :(得分:0)

在分析或转换任何日期时间值之前,请检查您的日历的日期格式。在您的aspx页面上转到calendarExtender并转到其属性然后查找格式并将格式设置为dd / MM / yyyy,今天的日期格式也是如此。然后从你的代码后面声明一个datetime类型的变量,只需传递calendarExtender将日期打开的文本框值,并在日期时间转换文本框值。代码就像 public DateTime date {get; set;}

date = Convert.ToDateTime(txtDate.Text.ToString()); 在sql server中,该值将保存为&#34; 2016-02-09 00:00:00.000&#34;这种格式