如何使用vs 2010,c#以编程方式在Word 2007文档中插入或编辑饼图?

wil*_*ove 8 c# automation ms-word visual-studio-2010

我需要以编程方式在Word 2007文档中插入或编辑饼图,使用vs 2010,c#...我发现的所有内容都显示了如何将这些旧的丑陋图表放入word doc中.所以我现在想知道是否有可能操纵更新更好看的图表.

这个展示了如何做我想要的,只有它是旧的丑陋的图表.... http://msdn.microsoft.com/en-us/library/ms178766.aspx.它告诉你插入一个OLE对象,它是古老的msgraph.chart.8的东西.

除了使用更新的图表风格之外,我已经能够做我需要做的一切.

这是一些代码.我构建了一个新的饼图,现在如何将其插入Word文档?我的PieChart3D类基于这些http://code.msdn.microsoft.com/mschart

// here's my c#.net

private void CreateChart(string title, Microsoft.Office.Interop.Word.Application oWord, Microsoft.Office.Interop.Word.Document oDoc, ChartType chartType, Hashtable values)
{
  PieChart3D chart1 = new PieChart3D();  // using System.Windows.Forms.DataVisualization.Charting
  chart1.PieChart3D_Load(values);

  object oMissing = System.Reflection.Missing.Value;
  object oEndOfDoc = "\\endofdoc"; /* \endofdoc is a predefined bookmark */
  Microsoft.Office.Interop.Word.Range wrdRng = oDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;

  // None of these work!!!!
  wrdRng.InlineShapes.AddOLEControl(chart1);
  wrdRng.InlineShapes.AddChart(chart1);
  wrdRng.InlineShapes.AddOLEObject(chart1);

  return;
}

// done with code
Run Code Online (Sandbox Code Playgroud)

在我看来,我只需要将其注入文档的最后一步.我错过了什么?

ker*_*vin 3

您可能应该在“AddOLEControl()”调用中添加缺少的参数,以便更好地衡量。

如何使用 AddOLEObject 将 Excel 图表插入到 Word 中

http://support.microsoft.com/kb/316384