C# 如何在WPF中创建系统控件抽象类的实例?
我在WPF中编写了以下代码:C# 如何在WPF中创建系统控件抽象类的实例?,c#,.net,wpf,C#,.net,Wpf,我在WPF中编写了以下代码: System.Windows.Controls.Panel Panel1 = null; Panel1 = new System.Windows.Controls.Panel(); 但它的意思是: Error1 Cannot create an instance of the abstract class or interface 'System.Windows.Controls.Panel' 如何解决这个问题?有人能回答我的问题吗。您不能创建抽象类
System.Windows.Controls.Panel Panel1 = null;
Panel1 = new System.Windows.Controls.Panel();
但它的意思是:
Error1 Cannot create an instance of the abstract class or interface 'System.Windows.Controls.Panel'
如何解决这个问题?有人能回答我的问题吗。您不能创建抽象类的实例,请参见 您可以从抽象类派生,然后可以使用派生对象作为抽象类型,请参见和- 抽象类不能被实例化,并且经常 部分实施,或根本未实施 如果需要
面板
,请创建派生自的类的对象。最受欢迎的是
- 网格
- DockPanel
- 堆垛板
- 帆布
System.Windows.Controls.Panel Panel1 = new System.Windows.Controls.DockPanel();
但我认为您需要访问DockPanel的Dock
属性(以及特定于DockPanel的属性),因此您应该创建DockPanel对象-
System.Windows.Controls.DockPanel Panel1 = new System.Windows.Controls.DockPanel();
错误消息是正确的!您无法创建任何抽象类或接口的实例。你到底想做什么?@MitchWheat我想创建一个面板/@ZoyaSheikh也许你想要
StackPanel
或Canvas
?它们都是非抽象的Panel
s.@MitchWheat Joachim想要DockPanel。你可以创建很多。你可以参考my Main Window.xaml中的DockPanel。我定义了MVVM框架来编辑、删除和更新网格中的数据。每当单击名为“new”的按钮时,我想在ViewModel类中创建新的PanelB。PanelA将隐藏,PanelB应占据Panle A的位置?创建一个ContentControl
和两个DataTemplates
。在按钮上,单击更改数据模板
。然而,这与创建一个抽象类的实例有什么关系呢?我认为没有必要从面板
派生一个新类,因为已经有这么多了。