RichTextBox Bullet Indent(.NET Forms)

时间:2017-03-05 17:45:20

标签: c# winforms richtextbox bulletedlist

在Microsoft Word中,制作项目符号列表时,按tabbackspace会更改当前项目符号的位置,如下所示:

  • 子弹一
    • 缩进的子弹
  • Bullet 2

但是,在RTB中,按Tab键会产生以下结果:

  • Bullet One
  • 缩进的子弹
  • Bullet 2

有没有干净的方法来实现这一目标?或者我是否需要查看创建自定义RTB? (如果是,请提供代码段)

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用事件来完成,例如;

代码;

private void Form1_Load(object sender, EventArgs e)
{
     richTextBox1.SelectionBullet = true;
     richTextBox1.AcceptsTab = true;
}

private void richTextBox1_KeyUp(object sender, KeyEventArgs e)
{
     if (e.KeyCode == Keys.Tab)
     {
          richTextBox1.SelectionIndent = 30;
     }
     if (e.KeyCode == Keys.Enter)
     {
          richTextBox1.SelectionIndent = 0;
     }
}

<强>结果; enter image description here

希望有所帮助,