Skip to content

Instantly share code, notes, and snippets.

@studermartin
Created August 2, 2020 10:48
Show Gist options
  • Save studermartin/16af5a5c155a70f4ad6e5078a830608e to your computer and use it in GitHub Desktop.
Save studermartin/16af5a5c155a70f4ad6e5078a830608e to your computer and use it in GitHub Desktop.
Inserts, updates, and retrieves content controls.
name: Content control basics (3)
description: 'Inserts, updates, and retrieves content controls.'
host: WORD
api_set: {}
script:
content: |
$("#change-controls").click(() => tryCatch(modifyContentControls));
async function modifyContentControls() {
// Adds title and colors to odd and even content controls and changes their appearance.
await Word.run(async (context) => {
let subbrandCCs = context.document.contentControls.getByTag("subbrand");
subbrandCCs.load("text");
await context.sync();
for (let i = 0; i < subbrandCCs.items.length; i++) {
let subbrandCC = subbrandCCs.items[i];
console.log("Replacing ...");
subbrandCC.insertText("asdfadsf", "Replace");
}
await context.sync();
return;
});
}
/** Default helper for invoking an action and handling errors. */
async function tryCatch(callback) {
try {
await callback();
} catch (error) {
// Note: In a production add-in, you'd want to notify the user through your add-in's UI.
console.error(error);
}
}
language: typescript
template:
content: "<section class=\"ms-font-m\">\n\tThis sample demonstrates how to insert and change content control properties.\n</section>\n\n<section class=\"samples ms-font-m\">\n\t<h3>Try it out</h3>\n\t<p>\n\t\t<span class=\"ms-font-m\">Modify content control appearance and content.</span>\n\t\t<button id=\"change-controls\" class=\"ms-Button\">\n <span class=\"ms-Button-label\">Modify content controls</span>\n </button>\n</section>"
language: html
style:
content: |-
section.samples {
margin-top: 20px;
}
section.samples .ms-Button, section.setup .ms-Button {
display: block;
margin-bottom: 5px;
margin-left: 20px;
min-width: 80px;
}
language: css
libraries: |-
https://appsforoffice.microsoft.com/lib/1/hosted/office.js
@types/office-js
[email protected]/dist/css/fabric.min.css
[email protected]/dist/css/fabric.components.min.css
[email protected]/client/core.min.js
@types/core-js
[email protected]
@types/[email protected]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment