Microsoft.Office.Interop.Word.FormFields.Item не существует в VS 2010 - PullRequest
1 голос
/ 14 февраля 2011

Я обновляю приложение Windows, которое было разработано в Visual Studio 2005 и .Net 2, до Visual Studio 2010. Одна функция приложения позволяет конечному пользователю открыть существующий документ MS Word, который предварительно заполнен данными активное окно (т. е. номер клиента, имя и т. д.). Существующий код, который устанавливает значение поля, выглядит следующим образом:

public void SetField(string fieldName, string value)
{
    object fName = fieldName;
    try
    {
        document.FormFields.Item(ref fName).Result = value;
    }
    catch (COMException ex)
    {
        if (ex.Message != "The requested member of the collection does not exist.")
        throw;
    }
}

Метод "Item" больше не существует. Есть ли замена?

1 Ответ

1 голос
/ 14 февраля 2011

Исходя из документации , похоже, что она просто стала индексом - так что, возможно,

document.FormFields[fName].Result = value;

(изначально у меня было FormFields[ref fName] - как прокомментировано ниже ref было неправильно.)

...