本文整理汇总了C#中ICSharpCode.AvalonEdit.Document.TextDocument.BeginUpdate方法的典型用法代码示例。如果您正苦于以下问题:C# TextDocument.BeginUpdate方法的具体用法?C# TextDocument.BeginUpdate怎么用?C# TextDocument.BeginUpdate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ICSharpCode.AvalonEdit.Document.TextDocument
的用法示例。
在下文中一共展示了TextDocument.BeginUpdate方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: RawlyIndentLine
public void RawlyIndentLine(int tabsToInsert, TextDocument document, DocumentLine line)
{
if (!_doBeginUpdateManually)
document.BeginUpdate();
/*
* 1) Remove old indentation
* 2) Insert new one
*/
// 1)
int prevInd = 0;
int curOff = line.Offset;
if (curOff < document.TextLength)
{
char curChar = '\0';
while (curOff < document.TextLength && ((curChar = document.GetCharAt(curOff)) == ' ' || curChar == '\t'))
{
prevInd++;
curOff++;
}
document.Remove(line.Offset, prevInd);
}
// 2)
string indentString = "";
for (int i = 0; i < tabsToInsert; i++)
indentString += dEditor.Editor.Options.IndentationString;
document.Insert(line.Offset, indentString);
if (!_doBeginUpdateManually)
document.EndUpdate();
}
示例2: TextDocumentWriter
public TextDocumentWriter(TextDocument doc)
{
_doc = doc;
_doc.BeginUpdate();
_undoStackSize = doc.UndoStack.SizeLimit;
_doc.UndoStack.SizeLimit = 0;
_i = _doc.TextLength;
}
示例3: IndentLines
public void IndentLines(TextDocument document, int beginLine, int endLine)
{
_doBeginUpdateManually = true;
document.BeginUpdate();
while (beginLine <= endLine)
{
IndentLine(document, document.GetLineByNumber(beginLine));
beginLine++;
}
document.EndUpdate();
_doBeginUpdateManually = false;
}
示例4: RegisterAffectedDocument
internal void RegisterAffectedDocument(TextDocument document)
{
if (affectedDocuments == null)
affectedDocuments = new List<TextDocument>();
if (!affectedDocuments.Contains(document))
{
affectedDocuments.Add(document);
document.BeginUpdate();
}
}