C#/Winform では、ユーザーが入力した場合、文字列を日付に解析できます。dd/mm/yyyy
DateTime.Parse(date).ToString();
スラッシュなしで解析できるようにしたいと思います (たとえば、datagridview や DateTimePicker のように)。
01022012
に解析する必要があります01/02/2012
で解析する方法を知っている人はいDateTime.Parse
ますか?
これが私のコードです:
private void dataGridView_BadgeService_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
{
if (dataGridView_BadgeService.Columns[e.ColumnIndex].Name == "DateDebut" || dataGridView_BadgeService.Columns[e.ColumnIndex].Name == "DateFin")
{
string date = Convert.ToString(e.FormattedValue).Trim();
if (date.Length > 0)
{
try
{
DateTime _date;
DateTime.TryParseExact(date, "ddMMyyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out _date);
date = _date.ToShortDateString();
dataGridView_BadgeService.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = date;
}
catch
{
MessageBox.Show("Merci de saisir une date, ou laissez cette zone vierge", "Action-Informatique", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
e.Cancel = true;
}
}
}
}
例外メッセージは次のとおりです。
「System.FormatException: 文字列は DateTime 有効として認識されません」