在DLL项目中没有创建WPF窗口?

Ant*_*ard 52 wpf dll window

有没有理由为什么Visual Studio不允许我在DLL项目中创建WPF窗口?

我通过在Application Project中创建一个窗口并将其复制到我的DLL项目来"解决"它.我还发现我可以创建一个UserControl并将基类更改为"Window".

但如果我不得不这样做,那可能是因为我不应该这样做......

Flo*_*yon 81

确保项目类型是WPF User Control Library您创建项目的时间.

如果不是没有汗水,只需编辑csproj文件并确保该<ProjectTypeGuids>元素Project/PropertyGroup包含以下GUID

<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>

另外,请确保在项目中引用PresentationFramework和System.Xaml,否则您的代码中将不会获得任何WPF.

  • 如今在.NET 4+ System.Xaml中也需要与PresentationFramework一起使用. (7认同)

ele*_*ron 9

您可以尝试添加新的WPF用户控件项并将其更改为Window.

添加新项目 - > WPF->用户控制

在XAML中:

<UserControl>标签更改为<Window>

在CS中:

将基类更改System.Windows.Controls.UserControlSystem.Windows.Window.


Vil*_*iam 7

我这样做:1)创建"WPF应用程序"2)删除App.xaml 3)更改项目属性 - >应用程序输出类型:到类库(最初有Windows应用程序)

否则你会得到错误:

"库项目文件无法指定ApplicationDefinition元素"

"项目文件包含无效的属性值"