2012-01-26 26 views
0

私の状況:私はdigitisのハイライトを含む非常に単純なテキストエディタをいくつかのキーワードと特殊文字で作成しています。今私は行番号を実装しています。私はListViewを使用しています。新しい行を追加するたびに、カーソルを使用してスクロールするときに行番号が更新されず、ジャンプする30行には、listViewは10行目に残っています。たとえば、この理由から、RichTextBoxの座標をスクロールしてlistViewのスクロールに同期させる方法を探しています。RichTextBoxでスクロールの座標を取得する方法は?

これを解決するさまざまな解決策が非常に高く評価されています。私はこれがはっきりしていることを望む前もってハンクス。

+0

あなたはリッチテキストボックスにスクロールダウンされただけICSharpCode.AvalonEdit

をコンパイルしますか?行番号はどうやって取得していますか? – Paparazzi

+0

@BalamBalam:これを基に、行番号を設定します: 'var textRange = new TextRange(TextInput.Document.ContentStart、TextInput.Document.ContentEnd); (int i = 1、count = lines.Length; i Jack

答えて

0

独自のテキストエディタを開発する代わりに、SharpDevelopのエディタを試すことができます。完全にインストールする必要はありません。ただ、そのソースをダウンロードし、それが財産ShowLineNumbers :)

+0

ええと、それは良いのように見える、私はそれを試してみましょう。 – Jack

0
TextPointer textPointer = MyRichTextBox.Document.ContentStart.GetPositionAtOffset(8); 
if (textPointer != null) 
{ 
    MyRichTextBox.CaretPosition = textPointer; 

    MyRichTextBox.Focus(); 
    MyRichTextBox.Selection.Select(MyRichTextBox.CaretPosition, MyRichTextBox.CaretPosition); 
} 
関連する問題