如何在RichTextBox中插入段落的索引?

时间:2012-11-20 18:16:11

标签: c# wpf richtextbox

标题解释了一切。我希望用户知道段落的索引,他正在编辑。

2 个答案:

答案 0 :(得分:0)

将该信息放在段落当前运行的工具提示中。例如,我的Richtextbox设置如下:

<RichTextBox Name="rEdit"
             TextChanged="rEdit_TextChanged"
             IsDocumentEnabled="True">

然后在TextChanged上我设置了一个工具提示,它为我提供了paragarph中的单词总数,当我将鼠标悬停在该段落上时会显示:

 private void rEdit_TextChanged(object sender, TextChangedEventArgs e)
   {

      if (rEdit.Selection != null)
      {
         var startpos = rEdit.Selection.Start;

         if (startpos != null)
         {
            var run = startpos.Parent as Run;

            if (run != null)
            {
               int count = 0;

               if (string.IsNullOrWhiteSpace(run.Text) == false)
                  count = run.Text.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries).Count();

               run.ToolTip = new Run("Words: " + count);
            }
         }
      }

   }

答案 1 :(得分:0)

您应该处理onLayoutUpdated()事件。请看这个链接:What is the best way to create a Numbered RichtextBox?。当然,链接并不能解释一切。例如你应该把onMouseScroll事件处理到。