1

元のテキストの長さを増やさずcharactersに、スペースで区切られた4 つのグループでテキストを表示する必要があります。XamMaskedEditor例えば。私の元のテキストは0000111100001111表示する必要があります0000 1111 0000 1111

出来ますか?

はいの場合はお知らせください。

前もって感謝します。

4

2 に答える 2

0

入力が静的な最大長 (16 桁のクレジット カード番号など) になる場合は、DataMode プロパティを使用して "Raw" に設定できます。これにより、テキスト プロパティの値は、パディングなしで入力された値になります。

<inf:XamMaskedEditor HorizontalAlignment="Center"
                     VerticalAlignment="Center"
                     Width="150"
                     Mask="#### #### #### ####"
                     DataMode="Raw"
                     Text="{Binding TestTxt, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>

上記の例では、入力は数字のみを許可し、次のようになります。

1234 5678 9012 3456

しかし、テキスト プロパティの値は次のようになります。

1234567890123456

于 2013-07-08T18:48:14.180 に答える
0

このコンバーターを xaml で使用します。テストはしていませんが、問題なく動作するはずです。

public class FourLetterGroupConverter : IValueConverter
{     
    public object Convert(object value, Type targetType, object parameter, string language)
    {
        var toConvert = (string)value;

        StringBuilder sb = new StringBuilder();

        for (var i = 0; i < toConvert.Length; i++)
        {
            sb.Append(toConvert[i]);

            if(i != 0 && i%4 ==0)
            {
                sb.Append(" ");
            }
        }

        return sb.ToString();
    }

    public object ConvertBack(object value, Type targetType, object parameter, string language)
    {
        throw new NotImplementedException();
    }
}
于 2013-07-08T19:05:38.663 に答える