在窗口C中将StackPanel附加到网格#

时间:2015-11-12 18:39:54

标签: c# wpf xaml

我正在尝试将StackPanel添加到此窗口的Grid中,我已将Window传递给该方法。

App.xaml.cs

/// <summary>
        /// Show single notifications
        /// </summary>
        /// <param name="window"></param>
        public static void showSingle(Window window)
        {
            // Find the resource, then cast it to a runtimeObject
            var runtime = (runtimeObject)Application.Current.TryFindResource("runtimeVariables");
            Style style = Application.Current.Resources["NotificationsContainer"] as Style;

            //Create container control
            StackPanel container = new StackPanel();
            container.Style = style;

            //Append to Window
            window.Container.Children.Add(container);
        }

这是窗口的XAML:

<Window x:Class="Test_Project.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:Test_Project"
        mc:Ignorable="d"
        xmlns:Extensions="clr-namespace:Test_Project.Classes"
        xmlns:Controls="clr-namespace:Controls;assembly=Controls"
        Title="MainWindow" Height="609.925" Width="573" Name="Main">
    <Grid Name="Container">

我收到了一个错误,但是说:

  

'Window'不包含'Container'的定义,没有   扩展方法'Container'接受类型的第一个参数   可以找到'窗口'(你是否错过了使用指令或者   装配参考?)

我有一种感觉,我这样做错了,想法?

1 个答案:

答案 0 :(得分:1)

public static void showSingle(Window window) - Window是一个基类,它不包含Container的定义。您应该使用Window类(MainWindow)。