What is the best way to copy or cut/past a form from one Project to another Project within a Solution in Visual Studio?
Whenever I try it, using the solution explorer (drag and drop or right clicking cut and past), it only copies the underlying C# code and not the necessary 'bits and pieces' that help you visualise the form via the form designer.
.cs
,.designer
,resx
to the target solution folder.Add existing item
and add the designer file first..cs
file should come in as well..cs
file.resx
file usingAdd existing item
.I have tried the below steps and its worked fine.
I tried the following process in Visual Studio 2012 and it worked.
Use ReSharper (get the demo), right-click the class in Code View, Refactor->Move, and move it to another project.
The added benefit is that if you change the namespace by moving it between projects, it'll auto-update all references.
Are you selecting the file, or using the designer to "Copy" all of the controls? Selecting the
YourForm.cs
file in the Solution Explorer and copying it via copy-and-paste or drag-and-drop to your other project should accomplish what you need.Using VS2013 just tested this and it appears reliable and consistent. This is similar to some comments above but adds another method that's quicker.
(1st) In Windows File Explorer highlight and copy all 3 Form files (.vb or .cs, .designer, .resx)
(2nd) This can be accomplished 2 ways:
(2a-1) In File Explorer paste the 3 files into the project folder with your other forms
(2a-2) In VS Solution Explorer, turn 'Show All Files' on, Right Click on the pasted form & 'Include in Project'. It should work without other changes.
Or, I think better:
(2b-1) In VS, click into Solution Explorer and paste w/Control-C. (For some reason the right-click context menu in Solution Explorer may not show a paste option, but it works from the keyboard.) This method adds the form to the project directly without having to 'Include in Project' as above. With this method you can add as many forms at a time as you like (all 3 files for each) in a single step.