在c#DragOver Drop中创建XAMLstackpanel

在c#DragOver Drop中创建XAMLstackpanel,c#,wpf,xaml,C#,Wpf,Xaml,我正在用C#创建StackPanels 我试图在C#中复制的xaml是 目前唯一的问题是StackPanel没有DragOver和Drop的属性,如何将其添加到C代码中?是的,它有 var sp = new StackPanel(); sp.Drop += (o, arg) => { }; 您不能在对象创建主体中分配事件。是的,它确实有 var sp = new StackPanel(); sp.Drop += (o, arg) => { }; 您不能在对象创建主体中分配事件。这

我正在用C#创建
StackPanels

我试图在C#中复制的xaml是

目前唯一的问题是
StackPanel
没有
DragOver
Drop
的属性,如何将其添加到C代码中?

是的,它有

var sp = new StackPanel();
sp.Drop += (o, arg) => { };
您不能在对象创建主体中分配事件。

是的,它确实有

var sp = new StackPanel();
sp.Drop += (o, arg) => { };

您不能在对象创建主体中分配事件。

这些不是属性,而是可以使用
+=
语法将处理程序连接到的事件:

StackPanel myPanel = new StackPanel
{
    MinWidth = 150,
    MinHeight = 150,
    AllowDrop = true
};
myPanel.DragOver += panel_DragOver;
myPanel.Drop += panel_Drop;
MainStack.Children.Add(myPanel);

当然,处理程序,
panel\u DragOver
panel\u Drop
,仍然必须像以前一样定义。

这些不是属性,而是可以使用
+=
语法连接处理程序的事件:

StackPanel myPanel = new StackPanel
{
    MinWidth = 150,
    MinHeight = 150,
    AllowDrop = true
};
myPanel.DragOver += panel_DragOver;
myPanel.Drop += panel_Drop;
MainStack.Children.Add(myPanel);
当然,处理程序,
panel\u DragOver
panel\u Drop
,仍然必须像以前一样定义