在RichTextBox中如何使用Tab键,进行缩进
相信的勇气 2005-02-05 06:00:45 在别的编辑器中,使用Tab键,编辑框中的文本回向后缩进,用Shift+Tab键,向回缩进!
但是我在RichTextBox中,按Tab键,里面的文本根本没有变化,请问如何实现!
我自己写了一个实现方法,但感觉不好,效率不高,而且不能实现Shift+Tab的功能
protected override void OnKeyUp(KeyEventArgs e)
{
if(e.KeyCode.ToString()=="Tab")
{
int selectStart=base.SelectionStart;
int line=base.GetLineFromCharIndex(selectStart);
string lineStr=base.Lines[line];
SendMessage(base.Handle, WM_SETREDRAW, 0, IntPtr.Zero);
lineStr=" ";
base.SelectionStart =selectStart;
base.SelectionLength = 0;
base.SelectedText=lineStr;
SendMessage(base.Handle, WM_SETREDRAW, 1, IntPtr.Zero);
base.Refresh();
}
}