не совсем точный вопрос, но позвольте мне немного помочь:
Вот простой пример того, как проанализировать строку, подобную той, которую вы могли бы иметь, и сохранить ее в переменной DateTime (которая, вероятно,чистое решение, если вы хотите отобразить его в другом формате позже и т. д.).
string text = "21:05"; (instead you retrieve the content of your text box obviously)
string format = "HH:mm";
CultureInfo fr = new CultureInfo("fr-FR");
DateTime dt = DateTime.ParseExact(text, format, fr);
[РЕДАКТИРОВАТЬ] на основе комментария Дмитрия:
string text = "21:05";
string format = "HH:mm";
CultureInfo invariant = System.Globalization.CultureInfo.InvariantCulture;
DateTime dt;
if (DateTime.TryParseExact(text, format, invariant, DateTimeStyles.None, out dt))
{
// do your stuff
}
else
{
// handle the fact you cannot parse the datetime
}
Будьте осторожны, культурныйконтекст может быть очень важным в зависимости от вашего случая.Если вы хотите избежать неправильного ввода данных от пользователя, вам следует подумать о том, чтобы выполнить проверку содержимого поля, когда пользователь вводит его.Это способ заставить его соответствовать формату, который вы ожидаете.
Посмотрите здесь, например: Реализация проверки для текстовых полей WPF , но вы сможете найти другие примеры того, как это сделать в SO, или просто Google.