AvalonEdit中的自动补全和缩进无法工作。
创始人
2024-11-12 18:30:10
0

在使用自动补全功能时,应该定位光标的位置,以便在插入文本时正确地处理缩进。以下是使用AvalonEdit的示例代码:

private void TextEditor_TextArea_TextEntered(object sender, TextCompositionEventArgs e)
{
    if (e.Text == ".")
    {
        // 获取当前光标位置
        int caretOffset = textEditor.CaretOffset;
        int line = textEditor.Document.GetLineByOffset(caretOffset).LineNumber;
        int lineOffset = textEditor.Document.GetLineByOffset(caretOffset).Offset;
        int indent = lineOffset - textEditor.Document.GetLineByNumber(line).Offset;

        // 插入文本
        textEditor.Document.Insert(caretOffset, ".");
        textEditor.Document.Insert(caretOffset + 1, Environment.NewLine + new string(' ', indent));
        textEditor.CaretOffset = caretOffset + 2 + indent;
        e.Handled = true;
    }
}

在这个示例中,我们确定当前光标所在的行,然后使用该行的缩进量来插入一个新行,并重新定位光标以便使用缩进。

相关内容

热门资讯

玩家实测!微扑克wpk辅助透视... 玩家实测!微扑克wpk辅助透视,微扑克如何让系统发好牌(微扑克)都是真的有挂(有挂解密)-哔哩哔哩1...
一分钟了解!德州微扑克外挂,微... 一分钟了解!德州微扑克外挂,微扑克透牌(微扑克)真是存在有挂(果真有挂)-哔哩哔哩德州微扑克外挂是一...
玩家必备教程!微扑克辅助挂,微... 玩家必备教程!微扑克辅助挂,微扑克有挂么(微扑克)果然有挂(有挂教程)-哔哩哔哩;微扑克辅助挂辅助器...
热点推荐!微扑克透牌软件,微扑... 热点推荐!微扑克透牌软件,微扑克ai机器人(微扑克)其实是真的有挂(发现有挂)-哔哩哔哩1、游戏颠覆...
总算了解!微扑克辅助插件挂,微... 总算了解!微扑克辅助插件挂,微扑克ai机器人(微扑克)本来真的有挂(有挂教学)-哔哩哔哩1、用户打开...
玩家必用!微扑克辅牌器,微扑克... 玩家必用!微扑克辅牌器,微扑克如何让系统发好牌(微扑克)一直是真的有挂(有挂解密)-哔哩哔哩1、微扑...
普及知识!微扑克透明挂,微扑克... 普及知识!微扑克透明挂,微扑克透牌(微扑克)原来是真的有挂(新版有挂)-哔哩哔哩1、任何微扑克透明挂...
分享一款!微扑克职业代打,微扑... 分享一款!微扑克职业代打,微扑克ai机器人(微扑克)一直真的有挂(有挂方式)-哔哩哔哩1、首先打开微...
总算了解!微扑克透牌真假的,微... 总算了解!微扑克透牌真假的,微扑克如何让系统发好牌(微扑克)都是有挂(有挂细节)-哔哩哔哩;1、微扑...
盘点几款!微扑克ai算牌器,微... 盘点几款!微扑克ai算牌器,微扑克有挂么(微扑克)果然是真的有挂(有挂细节)-哔哩哔哩1、完成微扑克...