Có lẽ một câu hỏi ngu ngốc, nhưng khi tôi thêm mục vào một dự án WPF, Visual Studio chỉ cung cấp cho tôi UserControl, và không Window. Đây có phải là cố gắng khuyến khích tôi làm MVVM, thiết lập của tôi bị hỏng hay có lý do nào khác mà tôi chưa từng nghĩ đến?Tại sao Visual Studio không muốn tôi thêm cửa sổ mới vào dự án WPF của tôi?
Trả lời
Dự án của bạn có thể được định cấu hình là dự án WinForms hoặc có thể là thư viện lớp học. Nếu nó được tạo ra như một trong số này, bạn chỉ có thể thêm một WPF UserControl, thật không may.
Tất nhiên, không có lý do kỹ thuật cho giới hạn này, vì vậy bạn có thể sao chép/dán một từ dự án khác hoặc tạo lại/thay đổi dự án của mình thành dự án WPF.
Tôi không chắc chắn những gì bạn thay đổi chính xác để biến nó thành một dự án WPF trong mắt của VS. Bạn có thể thử tạo một dự án mới và phân biệt nó với dự án hiện tại của bạn. Bạn rất có thể sẽ phải thực hiện một số chỉnh sửa văn bản trên tệp .csproj
của mình.
Thử chạy devenv /installvstemplates
để đặt lại các mẫu đã cài đặt của bạn. Tôi đã sử dụng điều này trước khi điều khiển người dùng WPF bí ẩn biến mất khỏi danh sách thêm mới của tôi.
Trong dự án WPF của tôi, khi tôi nhấp vào Thêm tôi nhận các tùy chọn sau (bao gồm Cửa sổ).
Vì vậy, tôi e rằng đó là thiết lập của bạn.
Thêm phần này vào yếu tố <PropertyGroup>
đầu tiên của bạn trong csproj của bạn:
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
Dưới đây là một ví dụ:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{24793F93-0FD8-4EC9-B1D2-028DB489B10D}</ProjectGuid>
<OutputType>WinExe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>nest_spawner</RootNamespace>
<AssemblyName>nest-spawner</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
trở thành:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{24793F93-0FD8-4EC9-B1D2-028DB489B10D}</ProjectGuid>
<OutputType>WinExe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>nest_spawner</RootNamespace>
<AssemblyName>nest-spawner</AssemblyName>
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
Mẹo hay! Làm việc cho tôi –
Cố gắng này nhưng nếu tôi thêm thẻ đó, VS không tải dự án, nói với tôi "một dự án có cùng tên đã được mở trong giải pháp". Bất kỳ ý tưởng? –
Không hiệu quả với tôi. –
không sử dụng Visual studio 2015 Microsoft Trộn ... để mở dự án của bạn .. mở p của bạn roject trong Visual Studio - Microsoft Visual Studio ,,, xem trong thanh tiêu đề
- 1. Visual Studio thêm hình ảnh vào dự án
- 2. Tại sao tôi không thể thêm tệp plist pane con vào tệp Settings.bundle của dự án của tôi?
- 3. Tại sao Visual Studio 2008 luôn xây dựng lại toàn bộ dự án của tôi?
- 4. Dự án Visual Studio 2010 cho Visual Studio 2012
- 5. Tại sao dự án web của tôi không tìm thấy tệp elmah.axd của tôi
- 6. Visual Studio thêm tệp bin vào dự án
- 7. Tại sao Visual Studio mất quá lâu để thêm một dự án hoặc nộp
- 8. Visual Studio tiếp tục thêm thuộc tính vào csproj của tôi. Tại sao?
- 9. Cài đặt dịch vụ cửa sổ từ dự án Visual Studio Installer
- 10. Làm cách nào để bạn thêm dự án mới vào tệp Visual Studio Solutions?
- 11. Tại sao Visual Studio không thể tìm thấy phương pháp WPF InitializeComponent của tôi?
- 12. visual studio không thể mở dự án mới
- 13. Visual Studio Debugging- Tôi chỉ muốn bước qua chương trình của tôi!
- 14. Làm thế nào để đặt một dll vào dự án của tôi - visual studio C# 2010
- 15. Tại sao dự án Visual Studio Win32 của tôi yêu cầu .NET 3.5 SP1 để cài đặt?
- 16. Gói Visual Studio Extensibility không nhìn vào đúng dự án
- 17. Làm cách nào để thêm tham chiếu vào loại dự án trang web của Visual Studio?
- 18. Tại sao Visual Studio đánh dấu lớp của tôi là một thành phần?
- 19. Thêm WPF Window vào dự án Winforms trong VS 2010
- 20. Cách thêm JSoup.jar vào dự án Android của tôi?
- 21. Tại sao tôi mất JavaScript intellisense sau khi chạy dự án của tôi?
- 22. Tệp dự án Visual Studio 2008 không tải do thay đổi mã hóa không mong muốn
- 23. Tại sao WPF CheckBox Binding của tôi không hoạt động?
- 24. Tại sao trang tính của tôi không được đính kèm vào cửa sổ mà nó chạy?
- 25. Có thể đổi tên thư mục "Dự án của tôi" trong dự án Visual Studio 2010 không?
- 26. Tại sao cụm từ dự án của tôi bị thiếu trong gói khi tôi gỡ lỗi?
- 27. Dự án Visual Studio không được lưu
- 28. Tôi có thể sao chép nhiều hàng từ cửa sổ "Tìm biểu tượng kết quả" của Visual Studio không?
- 29. Tại sao dự án Visual C++ .exe của tôi tạo tệp .lib và .exp?
- 30. Làm thế nào để tạo một dự án Visual Studio mới trong một dự án Visual Studio lập trình?
Cảm ơn, tôi đã sao chép điều này từ một dự án khác và giờ đây giống như bạn: {60dc8134-eba5-43b8-bcc9 -bb4bc16c2548}; {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} ProjectTypeGuids> –
Benjol
Không sao cả. Không có gì. –
Nhìn vào câu trả lời này. Nó chi tiết cách thêm hỗ trợ WPF vào một dự án hiện có: http://stackoverflow.com/questions/450377/upgrading-a-winforms-app-to-wpf – santiagoIT