2016-10-02 9 views
1

空白を入力すると、空白がドットまたはその他の文字として表示されるWPF TextBoxを使用したいと思います。例えばWPF TextBoxの空白を明示的に指定する

私は<space><space>abcに入力した場合、私は、テキストボックスが..abcを表示したいが、私はその.Textを得れば、それはまだ<space><space>abcを返す必要があります。

+0

http://stackoverflow.com/questions/24202565/display-whitespace-in-a-textbox-as-a-different-character – YuvShap

答えて

1

これが問題を解決するかどうかを確認してください。

public class NewTextBox : TextBox 
{ 

    static NewTextBox() 
    { 
     TextBox.TextProperty.OverrideMetadata(typeof(NewTextBox), 
      new FrameworkPropertyMetadata(
       "n/a", 
       TextBox.TextProperty.DefaultMetadata.PropertyChangedCallback, 
       new CoerceValueCallback(textValueCallback))); 
    } 

    private static object textValueCallback(DependencyObject d, object baseValue) 
    { 
     return baseValue.ToString().Replace(' ', '.'); 
    } 

    public new string Text 
    { 
     get { return base.Text.Replace('.', ' '); } 
    } 

} 
+1

Text' 'いじりが*ではありませんが、それは、確かにありません*あなたがデータバインディングを使用しているときに行く正しい方法。汚染されていない追加の物件を導入するのが簡単です。 –

関連する問題