Создать SmartArt из TreeView в C # - PullRequest
       37

Создать SmartArt из TreeView в C #

2 голосов
/ 14 февраля 2012

Есть ли способ создать диаграмму иерархии SmartArt в Word из дерева, созданного пользователем в приложении C # Windows Forms?

Спасибо за любую помощь.

1 Ответ

0 голосов
/ 14 февраля 2012

попробуйте так:

private void button2_Click(object sender, EventArgs e)
{
    Word._Application oWord;
    Word._Document oDoc;
    oWord = new Word.Application();
    oWord.Visible = true;
    oDoc = oWord.Documents.Add();

    // here try from 1 to 15 until you find the layout you are interested in...
    var myLayout = oDoc.Application.SmartArtLayouts[8];

    var smartArtShape = oDoc.Shapes.AddSmartArt(myLayout, 50, 50, 200, 200);

    smartArtShape.AlternativeText = "xxxx";
}

это вставит в документ форму SmartArt, настроенную для использования layout номер 8. Это не очень хорошо задокументировано, и я потратил много времени на поиск подходящегостатьи и примеры:

это очень важно понимать, что вы не можете создать объект SmartArtLayout с ключевым словом new, но должны использовать любой из тех, которые предусмотрены в коллекции макетов приложения ... ПриложениеСвойство .SmartArtLayouts (Word)

Это фон ... Создание пользовательских макетов SmartArt с Office Open XML для Office 2007 и Office 2010

Удачи:)

...