Привязка StringFormat является односторонней
Вам нужно написать собственный многозначный преобразователь, который также реализует метод ConvertBack.
Очень упрощенный конвертер будет что-то вроде ниже. Вам нужно будет добавить проверку ошибок, и, несомненно, нет лучшего способа конвертировать обратно (возможно, с помощью регулярного выражения). Кроме того, я не уверен, что правильно понял бит DateTime, но он дает вам отправную точку.
public class TimeConverter : IMultiValueConverter
{
public object Convert(object[] values, Type targetType, object parameter,
System.Globalization.CultureInfo culture)
{
return string.Format("{0}:{1}:{2}",values[0],values[1],values[2]); }
public object[] ConvertBack(object value, Type[] targetTypes, object parameter,
System.Globalization.CultureInfo culture)
{
var date=DateTime.Parse((string)value);
return new object[] { date.Hours,date.Minutes,date.Seconds };
}
}