Office365 Binding-按word文档中的层次结构对绑定进行排序(角度)
我们正在开发一个Office应用程序,其中包含选定文本的存储。我们将所有选定的文本保存在绑定列表中。但我们需要在整个文档中按选定文本的范围对列表进行排序。但是函数getAllAsync()返回Binging的随机列表 我们如何在文档中按层次结构对这些绑定进行排序 例如: 文本1(先选定) 文本2(选定的第三个) 文本3(选定秒) -- 我们需要排序列表,如:Office365 Binding-按word文档中的层次结构对绑定进行排序(角度),office365,office-js,office365api,office-addins,word-addins,Office365,Office Js,Office365api,Office Addins,Word Addins,我们正在开发一个Office应用程序,其中包含选定文本的存储。我们将所有选定的文本保存在绑定列表中。但我们需要在整个文档中按选定文本的范围对列表进行排序。但是函数getAllAsync()返回Binging的随机列表 我们如何在文档中按层次结构对这些绑定进行排序 例如: 文本1(先选定) 文本2(选定的第三个) 文本3(选定秒) -- 我们需要排序列表,如: 文本1 文本2 文本3 不是随机列表 是的,你可以!这里的关键是要记住,创建绑定实际上是向文档中添加内容控件,因此您需要做的是使用应用于所
不是随机列表 是的,你可以!这里的关键是要记住,创建绑定实际上是向文档中添加内容控件,因此您需要做的是使用应用于所选内容或文档正文的contentControls集合,并遍历它以获得读取顺序。(顺便说一句,你的问题不清楚你是否只需要选择或所有的文件,但我会解释两者) 现在,在样本之前进行一些澄清:
函数insertContentControlWithBinding(){
Word.run(函数(上下文){
//首先,我们在选择项上插入ContentControl,然后设置标题和标记,最后创建绑定。
var myContentControl=context.document.getSelection().insertContentControl();
加载(myContentControl);
返回context.sync()
.然后(函数(){
myContentControl.title=“identifier”;//稍后将使用该选项创建绑定。
myContentControl.tag=“BOUND”//用于标记为绑定内容控件。
返回context.sync()
.then(函数(上下文){
Office.context.document.bindings.addFromNamedItemAsync(“标识符”,Office.BindingType.Text,{},函数(结果){
if(result.status=Office.AsyncResultStatus.successed){
console.log(“成功创建绑定”)
}
})
})
})
}).catch(函数(e){
控制台日志(e.message);
})
}
有可能吗?您好!有趣的问题,我需要一些澄清。1) 你说的等级制度是什么意思?您指的是绑定在文档读取顺序中的顺序吗?(自上而下)2。不确定我是否理解示例3绑定中的“将所有选定文本保存在绑定列表中”是什么意思?就一个装订?您的问题是如何按照读取顺序获取所选内容中的绑定?请澄清,以便我能提供更好的指导。谢谢“您指的是绑定在文档阅读顺序中的顺序吗”-是的,从上到下;-“在您的示例中有3个绑定”->是的,我有3个绑定(Office.Binding的3个对象);我需要所有绑定的列表,这些绑定按照文档的阅读顺序-可能吗?可能吗?有什么想法吗?是的,很抱歉耽搁了,请检查下面我的答案。。。
Office.context.document.bindings.getAllAsync((result: Office.AsyncResult) => {
if (result.status == Office.AsyncResultStatus.Succeeded) {
for (let attBinding of result.value) {
var binding = attBinding as Office.Binding;
}
}
})