XamlUIPresenter Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Позволяет представить визуальное дерево на поверхности Microsoft Direct3D. Этот тип используется для сценариев размещения инструментов проектирования и не предназначен для общего использования.
public ref class XamlUIPresenter sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.UI.Xaml.Hosting.HostingContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class XamlUIPresenter final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.UI.Xaml.Hosting.HostingContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class XamlUIPresenter
Public NotInheritable Class XamlUIPresenter
- Наследование
- Атрибуты
Требования к Windows
Семейство устройств |
Windows Desktop Extension SDK (появилось в 10.0.10240.0)
|
API contract |
Windows.UI.Xaml.Hosting.HostingContract (появилось в v1.0)
|
Комментарии
XamlUIPresenter не предназначен для общих сценариев Взаимодействия с Microsoft DirectX и среда выполнения Windows. Вы не можете использовать этот API в приложении UWP, которое вы отправляете в Microsoft Store, оно не пройдет сертификацию.
Методы XAML-Microsoft функции взаимодействия DirectX см. в статье Взаимодействие с DirectX и XAML.
XamlUIPresenter предназначен специально для взаимодействия с поверхностями конструктора, которые представляют среда выполнения Windows объекты или их разметку XAML в виде графических объектов в пользовательском интерфейсе Microsoft DirectX.
XamlUIPresenter не имеет конструктора в среда выполнения Windows. Чтобы получить экземпляр XamlUIPresenter, необходимо вызвать функцию COM (CreateXamlUIPresenter), экспортированную из библиотеки DLL среда выполнения Windows. Например, в составе приложения C# можно импортировать библиотеку COM:
[DllImport("windows.ui.xaml.dll", SetLastError = true, CallingConvention = CallingConvention.Winapi)]
public static extern void CreateXamlUIPresenter(
IViewObjectPresentNotifySite presentSite, out Windows.UI.Xaml.Hosting.XamlUIPresenter presenter
);
Свойства
CompleteTimelinesAutomatically |
Возвращает или задает значение, определяющее, требуется ли узлу всегда выполнять временные шкалы до конца. |
RootElement |
Возвращает или задает корневой визуальный элемент для рисования на поверхности. |
ThemeKey |
Возвращает или задает ключ строки, определяющий набор тем для использования из ThemeResourcesXaml. |
ThemeResourcesXaml |
Возвращает или задает XAML-код, указывающий словарь ресурсов. Словарь ресурсов содержит темы, которые должен разрешить узел и которые должны быть применены к содержимому. |
Методы
GetFlyoutPlacement(Rect, Size, Size, Rect, FlyoutPlacementMode, Boolean, FlyoutPlacementMode) |
Вызывает логику размещения FlyoutBase , используя предлагаемый размер элемента управления, который будет отображать целевой объект размещения и его всплывающий элемент. Возвращает границы, которые являются результатом выполнения логики размещения. |
GetFlyoutPlacementTargetInfo(FrameworkElement, FlyoutPlacementMode, FlyoutPlacementMode, Boolean) |
Возвращает вычисляемые границы целевого объекта размещения, предназначенного для отображения всплывающего элемента на узле. Дополнительные параметры out предоставляют дополнительные сведения о том, как вычислялись границы. |
NotifyWindowSizeChanged() |
Вызывает событие SizeChanged в Window.Current. Используется узлами для распространения изменений размера из параметров узла в пользовательский код, чтобы взаимодействие в режиме разработки можно было отличить от взаимодействия во время выполнения. |
Present() |
Представляет поверхность как синхронный вызов для узла. |
Render() |
Отрисовывает поверхность. Предназначен для асинхронных вызовов через таймер. |
SetHost(IXamlUIPresenterHost) |
Указывает реализацию службы IXamlUIPresenterHost , используемую для разрешения ресурсов приложения. |
SetSize(Int32, Int32) |
Задает ширину и высоту поверхности. |