C#日历日期格式

时间:2014-01-29 13:05:43

标签: c# asp.net date datetime datepicker

我正在使用文本模式设置为日期的文本框。我需要的是将日期格式安排到MM / dd / yyyy。我知道如果我使用DateTime.Now,它获取今天的日期,但我无法获得值用户的选择日期,如果我这样做,因为有错误:

string dateOfBirth = DateTime.ToString("MM/dd/yyyy");

我是这样做的:

string tmpDateOfBirth = tb_date.Text;
//This below line returns todays date and not the date that the user pick on the calendar.
string dateOfBirth = DateTime.Now.ToString("MM/dd/yyyy");

4 个答案:

答案 0 :(得分:2)

您正在使用今天的日期并对其进行格式化...您需要格式化文本框中输入的内容。

string dateOfBirth = tb_date.Text.ToString("MM/dd/yyyy");

编辑:如果你得到'最佳重载匹配错误'

string dateOfBirth = Convert.ToDateTime(tb_date.Text).ToString("MM/dd/yyyy", CultureInfo.InvariantCulture); 

答案 1 :(得分:1)

好的,我假设你的TextBox1.Text包含有效的日期值。所以下面的代码可能对你有帮助。

string dateOfBirth = Convert.ToDateTime(TextBox1.Text).ToString("MM/dd/yyyy", 
System.Globalization.DateTimeFormatInfo.InvariantInfo);

答案 2 :(得分:0)

用户如何选择日期? 如果您有DateTimePicker对象,则只需键入

即可
string dateOfBirth = MyDateTimePicker.Value.ToString("MM/dd/yyyy");

修改

文本框并不意味着保留datetime个对象。如果您需要这样做,则必须解析其文本:

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

答案 3 :(得分:0)

您可以直接获取DateTimePicker的选定值。

试试这个:

string datetime = DateTimePicker1.Value.ToString("DateTimeFormat");

请参阅此链接http://msdn.microsoft.com/en-us/library/system.windows.forms.datetimepicker.value%28v=vs.110%29.aspx