如何在文本框中输入格式化日期?

How to input a formatted date in a text box?

我对如何输入格式化的日期时间和货币感到困惑。我希望用户将 DoB 输入为 dd/mm/yyyy,但是当我在 Visual Studio 中使用 DateTime 数据类型时,它只会得到 yyyy/mm/dd 格式。

这是我的代码: 这是来自另一个 class employee.cs

的 DoB 和 属性
 class employee
    {
        private DateTime myBOD;
public DateTime BOD
        {
            get
            {
                return myBOD;
            }
            set
            {
                myBOD = value;
            }
        }
}

这是主要的form1.cs

vemployee.BOD = Convert.ToDateTime(bod.Text);
var today = DateTime.Today;
age.Text = Convert.ToString(today.Year-vemployee.BOD.Year);

嗯,DateTime 是一个 struct,它没有任何格式,但有 YearMonthDay 等属性。 当你想从 string:

获得 DateTime 时使用 DateTime.ParseExact
 vemployee.BOD = DateTime.ParseExact(
   bod.Text, 
  "dd'/'MM'/'yyyy", // Please, note that "mm" stands for minutes, not months
   CultureInfo.InvariantCulture);

.ToString(format) 当您想将 DateTime 表示为 string

 DateTime today = DateTime.Today;

 bod.Text = today.ToString("dd'/'MM'/'yyyy", CultureInfo.InvariantCulture);