C# 在UWP中,我如何获得网格实例,它在弹出框中,它本身在ResourceDictionary中?

C# 在UWP中,我如何获得网格实例,它在弹出框中,它本身在ResourceDictionary中?,c#,xaml,uwp,windows-10-iot-core,C#,Xaml,Uwp,Windows 10 Iot Core,我有一个UWP应用程序,它将被部署到带有屏幕的设备上。该设备正在运行Windows 10 IoT Core 我想要某种形式的警报系统,因为我不能使用UWP ToastNotification,所以我决定创建自己的警报系统。我为通知创建了一个UserControl,效果很好。我在弹出按钮中动态显示控件,在一定程度上效果良好 弹出按钮位于ResourceDictionary中,如下所示: <ResourceDictionary xmlns="http://schemas.microso

我有一个UWP应用程序,它将被部署到带有屏幕的设备上。该设备正在运行Windows 10 IoT Core

我想要某种形式的警报系统,因为我不能使用UWP ToastNotification,所以我决定创建自己的警报系统。我为通知创建了一个UserControl,效果很好。我在弹出按钮中动态显示控件,在一定程度上效果良好

弹出按钮位于ResourceDictionary中,如下所示:

<ResourceDictionary
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:HCI">

    <Flyout x:Key="ToastNotificationFlyout" x:Name="ToastFlyout" 
            ShowMode="Transient" AllowFocusOnInteraction="False">
        <Grid x:Name="ToastContainer" />
    </Flyout>

</ResourceDictionary>
Globals.GlobalFlyout = (Flyout)Application.Current.Resources["ToastNotificationFlyout"];
…这允许我引用通过内容框架动态加载的代码页中任何类的弹出按钮

在我的主页实例中,我创建了如下引用:

<ResourceDictionary
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:HCI">

    <Flyout x:Key="ToastNotificationFlyout" x:Name="ToastFlyout" 
            ShowMode="Transient" AllowFocusOnInteraction="False">
        <Grid x:Name="ToastContainer" />
    </Flyout>

</ResourceDictionary>
Globals.GlobalFlyout = (Flyout)Application.Current.Resources["ToastNotificationFlyout"];
然后我可以引用C中的弹出按钮,但我似乎无法获得对网格的引用。 弹出按钮不包含.FindName方法,使用VisualTreeHelper会引发另一个用户在另一个SO问题中解释的灾难性异常。 我还尝试了各种调用.FindChild和.FindControl的方法,我在这里和其他社区中都找到了这些方法,但都不适用于这种情况

弹出按钮的内容很简单,模仿常规Win10 toast通知的外观

关于如何在弹出框中引用网格,以便添加通知控件的实例,您有什么想法吗?

网格实际上存储在:


当您将直接子对象放入弹出型按钮中时,XAML将其解释为内容。这是在引擎盖下使用的。

非常感谢,有一个让我抓狂;0