Интерфейс SolutionObject
Соответствует шаблону формы Microsoft Office InfoPath 2007.
Пространство имен: Microsoft.Office.Interop.InfoPath.SemiTrust
Сборка: Microsoft.Office.Interop.InfoPath.SemiTrust (в microsoft.office.interop.infopath.semitrust.dll)
Синтаксис
'Декларация
<CoClassAttribute(GetType(SolutionObjectWrapper))> _
<CLSCompliantAttribute(False)> _
<GuidAttribute("096cd557-0786-11d1-95fa-0080c78ee3bb")> _
Public Interface SolutionObject
Inherits Solution
'Применение
Dim instance As SolutionObject
[CoClassAttribute(typeof(SolutionObjectWrapper))]
[CLSCompliantAttribute(false)]
[GuidAttribute("096cd557-0786-11d1-95fa-0080c78ee3bb")]
public interface SolutionObject : Solution
Заметки
Этот тип является программой-оболочкой для компонентного класса, которого требует управляемый программный код для COM-взаимодействия. Используйте этот тип для доступа к членам интерфейса COM, созданного этим компонентным классом. Дополнительные сведения об интерфейсе COM, включая ссылку на описания его членов, см. в статье Solution.
Использование элементов интерфейса Solution обеспечивает совместимость с InfoPath 2003. Для использования новых элементов, добавленных к объектной модели Solution2 в Microsoft Office InfoPath 2007, необходимо привести объект, возвращенный свойством Solution объекта XDocument к типу Solution2. Дополнительные сведения см. в разделе Практическое руководство. Использование элементов Microsoft.Office.Interop.InfoPath.SemiTrust, несовместимых с InfoPath 2003.
Объект SolutionObject реализует свойства для получения сведений о шаблоне формы, включая номер его версии, URL-адрес извлеченных файлов формы, URL-адрес, с которого она была загружена и модель объектов документа XML (DOM), содержащая файл определения формы (.xsf).
Доступ к объекту SolutionObject можно получить с помощью свойства Solution объекта XDocument.
Пример
В следующем примере задается ссылка на объект Solution, а затем программа получает имя пользователя, создавшего форму из файла .xsf, используя свойство DOM объекта Solution. После этого запускается тест, позволяющий определить наличие значения автора, а затем результаты отображаются в окне сообщения.
[InfoPathEventHandler(MatchPath="SolutionInfo", EventType=InfoPathEventType.OnClick)]
public void SolutionInfo_OnClick(DocActionEvent e)
{
Solution solution = thisXDocument.Solution;
string solutionVersion = solution.Version;
string authorText;
IXMLDOMNode author = solution.DOM.selectSingleNode("xsf:xDocumentClass/@author");
if (author != null)
{
authorText = author.text;
}
else
{
authorText = "Author not available.";
}
thisXDocument.UI.Alert("Version: " + solutionVersion + "\nAuthor: " + authorText);
}
См. также
Ссылка
Члены SolutionObject
Пространство имен Microsoft.Office.Interop.InfoPath.SemiTrust