XAML Visual Studio 2017 cannot edit style anymore - visual-studio-2017

I have Windows 10 Fall Creators Update on my PC. On Visual Studio 2017 and Blend, i can't anymore edit control's style anymore.
For exemple, i have a button in my page. I can create a style for the button by right click on it and chose option Edit Style > edit a copy... and when i create, it add style code but i can't edit it with XAML's designer.
And when i try to edit existing Style (by right click on the button option Edit Style > edit current element the option is grayed out.
anyone ever had the same problem?
EDIT 21/10/2017 : it seems that this problem comes from the designer XAML targeting the version Falls Creator Upate of Windows 10, in my projet properties, if i choose current app version Creators Update, it works but not when the project is on Fall Creators Update.

You appear to have answered your own question, effectively. But for anyone else reading, the issue is the following.
In Visual Studio 2017 version 15.4, a major architectural update to the XAML Designer was introduced (which I'll call "New XAML Designer") alongside the older XAML Designer. Visual Studio chooses a version of the XAML Designer based on the active project's target SDK: for anyone targetting Universal Windows Platform (UWP) 10.0.16299 or later (Fall Creators Update), the New XAML Designer will be used. Anything targetting an earlier UWP version, and anyone targetting Desktop .NET will get the old XAML Designer version.
Finally, the New XAML Designer is not yet feature-complete, and removed a set of existing features. One of the dropped features was "Edit Current Style."
So - the solution is to target an earlier SDK, at least for the purposes of accessing this one feature.
Links:
MSDN Blog: A Significant Update to the XAML Designer
Visual Studio 15.4 Release Notes

Related

I am missing the Add new item Add "MFC Class From Typelib" in VS-2019

I have all MFC stuff installed foe my VS-2019 Porfessional.
I miss the Add New Item "MFC Class From Tyspelib" used in former version to create a simple IDispatch wrapper.
I checked everything and I installed the same stuff like in VS-2017. I see this in my VS-2017 version.
What did I miss?
Many Wizards, including that, have been removed from the VS2019.
The release notes say:
Deprecations - Visual Studio 2019
The following C++ ATL/MFC wizards are no longer available: ATL COM+ 1.0 Component Wizard, ATL Active Server Pages Component Wizard, ATL OLE DB Provider Wizard, ATL Property Page Wizard, ATL OLE DB Consumer Wizard, MFC ODBC Consumer, MFC class from ActiveX control, and MFC class from Type Lib. Sample code for these technologies is archived at Microsoft Docs and the VCSamples GitHub repository.
These changes start from VS2017 ver 15.3.
The change began with this edition, but no consistent behavior was completed.
Add ATL Simple Object in Visual Studio 2017
If you can do what you want with VS2017's latest version 15.9.13, you should work there and port to VS2019.
Furthermore, some work is impossible in 15.9.13. In that case, you need to work with older versions in the following way and port to VS2019
User registration at https://visualstudio.microsoft.com/
Download and install the product version below if you have a MSDN subscription, otherwise uses the Community version.
Visual Studio 2017 (version 15.0) (Note: This should never be updated)
Visual Studio 2015 with Update 3
If this is not possible, you will need to do something manually that Wizard did automatically.
This wizard was removed in VS2017 15.3, but then returned in VS2019 16.8. It also available in VS2022.
https://devblogs.microsoft.com/cppblog/typelib-and-activex-now-supported-in-mfc-wizards/
But Microsoft documentation is still outdated. As for now, VS 2019 does not have "Add class from typelib" option at project context menu. Instead, you need to "Add"->"New Item..." and find "MFC Class from Typelib"

Visual Studio forms does not have a properly functioning UI Tab

Whenever I try to add a forms window to my visual c++ application, I go to the UI Tab in Project --> Add New Item --> UI--> and i look for Windows Form, but I find
addmc++usercontrol
for some reason, I have tried updating Visual Studio, however my problem was not resoved, my current version is 15.5.6.
Launch your VS 2017 Installer and in the Desktop development with C++ select to the right the Optional component "C++ /CLI Support"

update to UAP (10.0.16299.0)

Currently I am using VS2017 Community.
I have downloaded the Windows IoT template for VS2017 community to do UWP programming.
After created the project, when I try to open the XAML file in designer view, I encountered this Message:
visual studio requires a newer version of windows to display this content.
please update to windows 10 Fall Creator update(10.0.16299.0)
So, I downloaded latest Win10 SDK
But Now I have this message:
visual studio requires a newer version of windows to display this content.
please update to UAP (10.0.16299.0)
What I need to do?
Thanks
You need the VS 2017 (15.4 update) or later to get the Windows 10 Fall Creators Update SDK (16299) integration.
If you have the 15.4 update already, then run the Visual Studio Installer, go to the Individual Component tab, and then check the components for 16299. Hit Modify.
See this blog post.
UPDATE: For C#/C++ projects, you set which Windows 10 SDK is used by editing the Project Properties and setting the Target Platform Version to 10.0.16299.0. You can also use the "Retarget solution" or "Retarget project" option.

Can We Use the VS 2015 Report Designer in VS 2017?

The newest Report Viewer for Visual Studio 2017 has some bugs that prevent us from using it. We’ve downgraded to Microsoft ReportViewer Runtime 2015 for Web Forms (v 12.0.2402.15). However, the report designer in Visual Studio creates new reports in the new “2016” format, and even editing old reports upgrades them to the new format as well. The older Report Viewer doesn’t understand the new format and bombs.
The new report designer is an extension to Visual Studio, “Microsoft Rdlc Report Designer for Visual Studio,” version 14.2. We haven’t found an earlier version of the designer available as an extension.
We’ve tried installing an earlier version of SQL Set Data Tools, but the report designer was still the same. We also haven’t found a separate download for the earlier report designer.
Is there a way to add the older report designer to VS 2017? Or do we have to downgrade to VS 2015?
(A similar problem here: Change RDL version for RDLC Reports in Visual Studio 2017)
The problems in ReportViewer that made it unusable for use were partially resolved in a later version. For example, the CSS in the ReportViewer changed the styles in the rest of the surrounding web page, which was pretty horrible (now fixed). We also saw problems of the viewer's export button drop-down list positioned far from its intended location. We had to fix that with custom JavaScript on the page.
You can include/add any RDLC created on VS 2015 to VS 2017 by click on add existing item and select the RDLC directly from your local location and will run on your VS .Add existing item
From what I can tell, ReportViewer for Visual Studio 2017 which is Version 14, is for compiling in Framework 4.5. My application is depended on 4.0 and if I switch then a bunch of other libraries need to be updated as well. I would rather get the previous version of ReportViewer 12 working, as it was working for my application without issues.
With ReportViewer Designer 14 for VS2017 installed, there is an error in the design of the page, and the application deployed and running on the server does not render the Report.
So, which way to move? Up or back...and how.

MFC development in vs2017

When I installed vs2017, I did select Windows development with C++ option. After installation, however, I don't see the MFC has been added. Sure enough, I get errors when I compile my application,
fatal error C1083: Cannot open include file: 'afxwin.h': No such file or directory
I cannot find the Change/Modify option with my vs2017 installation in Control Panel. How can I add "Microsoft Foundation Classes for C++" package?
If you look near the top of the VS Installer window, you'll see Workloads, Individual Components and Language Packs.
At least as far as I can see, none of the "Workloads" will include MFC in your installation. To get it, you first have to click on "Individual Components", then scroll quite a ways down to get to the "SDKs, libraries and frameworks" section. In there, you'll find a list of components for ATL and MFC support:
In the VS 2019 installer, the list of possibilities has gotten even longer. There are versions for ARM, ARM64, and x86/x64 both with and without Spectre mitigations, for each of the 141 and 142 build sets:
That's not necessarily the end of the story though: by default, even when you install that, it only installs the version Unicode build of MFC. If you want the narrow-character version, you have to install that separately. I don't think there's any entry in the installer to do this at all--but if you try to build a project that uses narrow-character MFC, you'll get an error message that includes a link to download it.
In Windows 10 with Visual Studio 2017 Community Edition to modify the Visual Studio 2017 installation, I had to go into Settings from the Windows Start menu then in the search box enter "Apps & Features" to bring up the list of installed applications (just typing in "apps" was enough to bring it up in the list).
I then looked for Microsoft Visual Studio 2017 in the list of apps, clicked on that entry which then displayed the Modify button. Clicking on the Modify button will bring up the installer to allow you to modify the various components.
I have seen cases where the installer wants to do an Update of Visual Studio 2017 before allowing you to do the Modify action. Depends on the last time you used it and the last time you did an update.
So instead of a Modify button there may instead be an Update button.
Note: see also How to install (v142) Build tools in Visual studio which describes issues seen with install order when installing both VS 2017 and VS 2019.
The VS 2017 Modify dialog has three tabs, "Workloads", "Individual components", and "Language packs". Click on the "Individual components" then scroll down to the section titled "SDKs, libraries, and frameworks" which is the last section in my install. There should be an entry for "MFC and ATL support (x86 and x64)" with a checkbox near the end.
There is a lot of stuff available from this "Individual components" view of the "Modify installation" dialog.
Just to add a tip for VS 2019:
#Jerry Coffin's answer does a good job of laying out the explosion of MFC/ATL options in VS 2019. Since there are many options and each MFC pack is 1.1+GB, here is how to pick the right one.
Platform: Hopefully you know this :) but it is in project properties.
Version: For an existing project, it is found in the project properties under "Configuration Properties -> General -> Platform Toolset"
Below is a screenshot showing both (Win32=x86 in this case). In this case I needed "C++ MFC for v141 build tools (x86 & x64)":
You should use Visual Studio Installer to make changes.
To create an MFC project, you just need to select Win32 project/Win32 Console Application for your application type, and then click OK. In Application Wizard, click next, in Application Settings, check MFC under Add common header files for:.