2017-03-23 5 views
0

TextBoxで編集可能なTimeSpanプロパティがあります。 TextBoxは、文字列をTimeSpanに変換して戻すコンバータを使用します。問題は、ユーザーがhh:mm:ssなどの書式設定された文字列を入力する必要があることなどです。私は、秒の合計数を表す整数だけを入力できるようにします。
これを達成する最も良い方法は何ですか?ユーザーに合計秒数を入力させる場合、どのようにTimeSpanフィールドにバインドしますか

答えて

1

それは私の目の前にあった...ちょうどタイプミスがあった。コンバータではこれを行う必要があります:

public object Convert(object value, Type targetType, object parameter, CultureInfo culture) 
    { 
     return ((TimeSpan)value).TotalSeconds.ToString(CultureInfo.InvariantCulture); 
    } 

    /// <see cref="IValueConverter.ConvertBack"/> 
    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) 
    { 
     return TimeSpan.FromSeconds(int.Parse((string) value, NumberStyles.None, CultureInfo.InvariantCulture)); 
    } 
関連する問題