Word
Microsoft 文字处理软件产品系列,用于创建 Web、电子邮件和打印文档。
24 个问题
word中在编号1.1.1后按backspace键时,编号会全部删掉,但我的VSTO程序生成的编号做同样的操作时,编号会变成1.2,为什么?怎么解决
Hi @stephen song , Welcome to Microsoft Q&A,
你希望在按下 Backspace 键时,直接删除当前段落的编号。你可以尝试一下以下的代码:
using System;
using Word = Microsoft.Office.Interop.Word;
namespace WordAddIn
{
public partial class ThisAddIn
{
private void ThisAddIn_Startup(object sender, EventArgs e)
{
this.Application.WindowSelectionChange += Application_WindowSelectionChange;
}
private void Application_WindowSelectionChange(Word.Selection Sel)
{
if (Sel.Range.ListFormat.ListType != Word.WdListType.wdListNoNumbering)
{
if (Sel.Backspace() && Sel.Range.ListFormat.ListType != Word.WdListType.wdListNoNumbering)
{
Sel.Range.ListFormat.RemoveNumbers();
}
}
}
private void ThisAddIn_Shutdown(object sender, EventArgs e)
{
}
private void InternalStartup()
{
this.Startup += new System.EventHandler(ThisAddIn_Startup);
this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
}
#endregion
}
}
这个示例代码会在选择文本改变时检查当前段落的编号,并在按下 Backspace 键时删除编号。
如果答案是正确的,请点击“接受答案”并点赞。 如果您对此答案还有其他疑问,请点击“评论”。
注意:如果您想接收相关电子邮件,请按照我们的文档中的步骤启用电子邮件通知 此线程的通知。