2011-12-30 12 views

答えて

4

SelectionChangedイベントを処理しようとすることができます。あなたはこのようなあなたのテキストボックスを定義XAMLで

<TextBox x:Name="myTextBox" SelectionChanged="TextBox_SelectionChanged" /> 

次に、あなたはカーソルの変更を処理する方法を記述します。

private void TextBox_SelectionChanged(object sender, RoutedEventArgs e) 
{ 
    int caretPosition = myTextBox.CaretIndex; 

    //put your handling code here... 
} 

それはとてもフォーカスを得る上で、すべてのキャレット変化に発射し、矢印キーでカーソルを移動するとき、マウスなどでカーソル位置を変更するときなど

この動作が複数のテキストボックスで必要な場合は、012に基づいて独自のclasを作成することもできますと同様の方法で独自のイベントを作成します。

私はこれをWPFプロジェクトでテストしましたが、Silverlightプロジェクトでも同様に動作するはずです。

0

許容される回答は実際には正しいですが、たとえば、1文字の文字を持ち、左から右に選択した場合、CaretIndexは変更されません。CaretIndexの値が1、値が0であることがわかります。

関連する問題