如何在word文档中交换2个范围

How to Swap 2 Range in word documnet

我如何交换 word 中的 2 个范围,我有列表并尝试手动对它们进行排序 每个范围都有锁定的内容控件

我尝试了下面的代码但没有成功:

object Unit = Microsoft.Office.Interop.Word.WdUnits.wdWord;
object Count = (toPosition - sourceStart);
range.Move(Unit, Count);

这是我的解决方案:

 range = documents.Range(sourceStart, sourceEnd);
 range.Select();
 range.Cut();
 var range1 = documents.Range(DestinationStart, DestinationStart);
 range1.InsertParagraphAfter();
 range1 = documents.Range(range1.End, range1.End);
 range1.Paste();