如何在WPF中创建Abstract Class of System控件的实例?

Zoy*_*ikh 2 .net c# wpf

我在WPF中编写了这段代码:

   System.Windows.Controls.Panel Panel1 = null;
   Panel1 = new System.Windows.Controls.Panel();
Run Code Online (Sandbox Code Playgroud)

但是它说:

Error1 Cannot create an instance of the abstract class or interface 'System.Windows.Controls.Panel'
Run Code Online (Sandbox Code Playgroud)

怎么解决这个?任何人都可以回答我的问题

Roh*_*ats 5

来自MSDN -

抽象类无法实例化,并且通常要么部分实现,要么根本不实现.

如果需要Panel,创建一个派生自Panel的类的对象.最受欢迎的是

  • DockPanel中
  • StackPanel中
  • 帆布

可在此处找到从Panel派生的类的完整列表.

这将有助于您的目的 -

System.Windows.Controls.Panel Panel1 = new System.Windows.Controls.DockPanel();
Run Code Online (Sandbox Code Playgroud)

但我认为您需要访问DockDockPanel的属性(以及特定于DockPanel的属性),因此您应该创建DockPanel对象 -

System.Windows.Controls.DockPanel Panel1 = new System.Windows.Controls.DockPanel();
Run Code Online (Sandbox Code Playgroud)