Word и reflection С#
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.Reflection;
namespace GridDataWord
{
public partial class Form1 : Form
{
public void createTable(DataGridView gridView)
{
try
{
//получение информации о типе приложения Word
Type typeForRootApplicationWord = Type.GetTypeFromProgID("Word.Application");
//создание объекта приложения word
object objectApplicationWord =
Activator.CreateInstance(typeForRootApplicationWord);
PropertyInfo visiblePropertyInfo = objectApplicationWord.GetType().GetProperty("Visible");
visiblePropertyInfo.SetValue(objectApplicationWord, (object)true, null);
PropertyInfo docsPropertyInfo = objectApplicationWord.GetType().GetProperty("Documents");
object documentsInWordApplication = docsPropertyInfo.GetValue(objectApplicationWord, null);
}
catch (Exception theException)
{
String errorMessage;
errorMessage = "Error: ";
errorMessage = String.Concat(errorMessage, theException.Message);
errorMessage = String.Concat(errorMessage, "Line: ");
errorMessage = String.Concat(errorMessage, theException.Source);
MessageBox.Show(errorMessage, "Error");
}
// typeForRootApplicationWord.InvokeMember();
}
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
createTable(this.dataGridView1);
}
}
}
При дэбаге просмотрев объект documentsInWordApplication вижу что там null. Хотя если вместо "Documents" поставить например "Caption", то сохраняется строка в объекте documentsInWordApplication.
Вопрос в следующем: почему свойство Documents объекта Application недоступно. Свойсто Documents хочу использовать чтобы добавить новый документ и уже с документом работать. Однако никак не могу получить объект Documents.
Что мешает использовать Microsoft.Office.Interop?