Visual Studio designer stops recognising changes occasionally - visual-studio

Using VS2008 visual designer occasionally the designer seems to stop recognising changes. Normally you get a * next to the filename in the tabs when a change is made but sometimes this stops appearing when I am making changes. When this happens may changes are getting "lost" so if I close/reopen the file all my changes are gone.
Has anyone else encountered this and know why it happens and if there's a fix/workaround?
Cheers.

We ran into a similar problem in Visual Studio 2010. When attempting to resize a user control, the designer simply refused to recognize that a change was made (no * shown), and when you rebuilt, all source file changes were lost.
I found this link from another person having the same problem.
After stepping back through source control and comparing the .designer.cs file for the user control and its child controls, it turned out to be the same problem. At some point, the line:
this.components = new System.ComponentModel.Container();
disappeared from the designer file of one of the child controls (not the user control that I was having problems with). Incidentally, within that designer file, all of the references to "this.components" were also removed.
After fixing the child control (restoring the creation of this.components, and fixing the original references), the top level user control then started recognizing changes again.
We're not sure what caused the corruption of the child control. Perhaps it was a source code merge or a designer bug.
It's a very difficult problem to debug. Even if you attach a debugger to debug the design time behavior of the user control (and its children), there are no exceptions thrown and there is no indication that anything is wrong.

Related

MSI Installer error 2810 interrupts installation, but still let's it finish with no problems

I have a setup created that installs an application, and still does, but it started giving a strange warning at the end out of the blue. So, when the installation process finishes, the following appears:
The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2810.
So I checked 2810, and it says:
On the dialog [2] the next control pointers do not form a cycle. There is a pointer from both [3] and [5] to [4].
I was not changing anything in the "User interface" or "Custom actions" so this came unexpected. Also the installation completes if you just click ok and everything works fine, it just doesn't look good from a user perspective. Any help or similar issues encountered?
Control_Next: This is probably just the tab-order for the controls on the dialog. See the Control_Next column of the Control Table. You need to find a way to visit each control of the dialog in sequence and sort out so there are no loops or double links.
TAB Order: In the dialog in question (launch the setup and get yourself to the FinishedForm dialog), try hitting TAB repeatedly to see what happens. It might work, but you might see the control order being messed up so TAB unexpectedly moves around the dialog haphazardly going in "reverse" selecting a control already visited or similar.
Fix: Fixing this depends on what tool you are using. You can "test fix" directly in the final MSI using ORCA or a similar tool to edit the Control Table directly (just open the MSI and do it). The real, lasting fix will be in the sources used to compile the setup. WiX, Installshield, Advanced Installer, Visual Studio Installer, or whatever tool you are using. Exact fix depends on tool. A screen shot of the Control Table content could give us the clue we need.
(combining comments into an actual solution)
If you're using the common script EnableLaunchApplication.js within a Visual Studio Installer project, then the 2810 error code is most likely caused by a single line within that script, along with a recent Visual Studio update.
The fix, as mentioned by user Olaf:
in the EnableLaunchApplication.js I changed the line INSERT INTO 'Control' ... and replaced the value 'CloseButton' with 'Line1'. – Olaf Jan 9 at 14:16
With the entire corrected script linked by user Shangwu:
Here is the latest JavaScript without causing error 2810. stackoverflow.com/a/59888956/6079057 – Shangwu Jan 24 at 0:49
The underlying reason can be found in answers by Adam cosby and Stein Åsmul.
I actually had the same problem and my Control Table was over populated just as you mentioned above. I beleive it was related or at least co-incided with the Visual Studio update from 16.3 to 16.4.2. For me I used the Visual Studio Installer too and on the older version of VS it compiles fine but the same commit number on a different machine with the new version it causes the same issue and the Control Table has a lot more Control_Next entries populated. Still not sure how to fix yet though in the source.
Edit:
Ok I discovered the problem. The issue with it now populating more of the Control_Next I can only put down to a the update. However, the automatic entries put in by Visual Studio would have been fine but I realised we had the MSI launch the exe after install using this: Visual Studio Installer > How To Launch App at End of Installer technique.
That meant I was injecting and modifying the Control_Next and thus caused the loop of Control_Next to be non circular. It is worth noting that the Control_Next is basically the tab order of the MSI screen and it must always be closed (imagine the tab without anywhere to go).. Anyway, it was ultimately caused by us modifying on the post build process the Control_Next to add in the checkbox. After working out the last entry on a build without our code running i just modified the original last entry and then slotted in out one there. Now it works fine.
Hope this helps

Visual Studio always closes Output window when build starts

I have a weird problem with Visual Studio Premium 2013. VS has taken to closing the Output window after my build starts. If the window is unpinned, it briefly opens at the start of the build, and then auto-hides. If it's pinned, it briefly gets selected, and then moves to another pinned window (it usually opens the Error List window and switches to that). The one thing it always makes sure of is that it switches away from the Output window. This is a behaviour that has started recently and I have no idea why - it didn't used to, and I don't remember changing anything related to this behaviour. Here's my settings, which should cause the Output window to stay open:
I've even tried deleting the solution's .suo file, but this problem persists.
Can anyone tell me how to get the Output window to stay open during a build again?
Well, I think this has something to do with the fact that the solution I'm building does a bunch of automated stuff, including the building of some .tt files. It's not a configuration issue in my Visual Studio because the Output window doesn't disappear when I'm building a new simple project I create from scratch, so I guess there's probably nothing I can do to stop the Output window disappearing for this project.

Visual studio does not load class into editor if you check it out while debugging the solution

We are using Visual Studio 2010 with Team Foundation server 2010 for source control. Our VB solution has several projects. (one EXE and a few DLLs).
Here is the issue:
1) Programmer A makes a change to a VB class and checks it in.
2) Programmer B, who is debugging the application, goes to that class in the editor and checks it out.
Immediately he gets a message saying that "Your action caused a check out of the file(s) such and such, and a new version from source control has been loaded in the development environment." When you say OK, every line in the class is underlined with a tooltip "Unable to apply this change while debugging"
So he stops debugging.
3) The change that the programmer A has made was checked out and is on disk but is not loaded into the editor. So if Programmer B alters the file and checks it in, the changes that Programmer A made are lost.
4) This does not happen if the solution is paused. Also if you close the class.vb and reopen it, it retrives the new one from disk.
We have lost several code changes because people check out recently updated code while debugging.
Any adeas as to how to make it work properly, that is how we can get the newly checked out source code to load in the editor when the program is debugging
Thanks,
Stephen Simpson

Microsoft visual studio screen problem

I am having a problem thats not about the code, it's about the screen in Microsoft visual studio 2008.
Actually problem is i created one utility from couple of weeks i didn't opened that utility today i opened (in Microsoft visual studio the screen appearing blank no controls are visible in that.But all the controls properties are there. I tried a lot but i didn't get solution. Last when the same thing happened i created the controls again. Now i don't want to go to create all the controls again. If any one have the solution please help me.
Before screen is like this:
Now its blank (like new page)
From your description I'm not sure if this is a application/code build issue or an IDE issue, what you could try is to reset the settings in visual studio and see if this helps.
You can do this by going to Tools -> Import/Export settings and then following the wizard to reset the settings, you may also want to perform a backup before resetting them (this is also part of the wizard) then they can be restored if this causes you further issues.
I don't have a copy of 2008 available at the moment so some menu entries may be slightly named different.
Hope this helps!
EDIT:
Now there is more information, this looks like there may be a problem with the code in the
InitializeComponent
method of the form.designer file (e.g. if you are using c# this would be something like Form1.Designer.cs and can be found by expanding the corresponding form in the solution explorer), if you remove/comment the lines that say
this.Controls.Add(this.NameOfControl)
(NameOfControl is where you would see your declared controls name)
then you get the behaviour that you are seeing, the controls do not render as they are never added to the forms controls collection but as they are declared you will still see them in the properties drop down and wont be able to add another control with the same name.

Visual studio 2008 Professional Edition acting weird

I have a weird situation on a winform project.
I have user control (with 600 lines of code around) with a datagridview. I change de ColumnHeaderStyle of the font and save it. After I save the file I close it and open again, the changes were not saved (although the asterisk is dissapeared), because the ColumnHeaderStyle is back to the former value. This is driving me crazy because I cannot change any visual thing in the Designer.
Any clue?
Thanks in advance.
I've had occasional very strange behaviour with VS2008 developing WinForms apps too. Mostly designers that won't display (even though nothing has changed), but I've had cases of disappearing controls, too (and hence compilations that won't complete since code then refers to controls that are no longer being created). All very irritating.
Assuming that you've done all the standard things, like Cleaning the solution (on the Solution's context menu), deleting all the relevant Bin and Obj folders (no idea why this would cures VS weirdnesses, but it sometimes does) and rebuilding (ensuring that the Designer for your user control is closed when you rebuild)...
... you might try looking through the designer code for some strange 'bonus' controls that apparently have nothing to with you.
In one particularly intractable case, I eventually noticed some controls with names like Button_01, Button_02, etc, whose origin I couldn't identify. They were being defined but not instantiated, and not being added to any controls collections, and I just deleted all references to them.
When I recompiled, they didn't come back, and VS was behaving itself again.
I can't explain it, but it worked that time, and I offer it as an example of VS gremlins that seem to have rather irrational solutions.
Maybe it was just a strange planetary arrangement that did it, I guess I'll never know.

Resources