0

Я работаю над приложением формы окна. Я начинаю новый проект. Я удаляю материал Form1 из нового проекта. Я иду и добавляю из существующего в explorer решения и выбираю Form1.cs, Form1.Designer.cs и Form1.resx из другого проекта. Когда я смотрю на конструктора Form1, он просто выглядит пустым, как новый, без какого-либо элемента управления. Программа по-прежнему компилируется с полным контролем. Я что-то пропустил? Я закрыл и снова открыл проект и т. Д. Это происходит каждый раз много раз, поэтому я считаю, что мне что-то не хватает, но поиск здесь или остальная часть Интернета не предоставил мне решение. Может быть, это, как предполагается, все знают?В Visual Studio 2013, когда я добавляю существующую форму, элементы управления не отображаются в дизайнере

Я просто изучаю C# и Visual Studio, надеюсь, я не пропустил что-то глупое. Я следил за тем, как это сделать из книги. Некоторые проекты снова используются для обучения новой идее, чтобы они запустили новый проект и добавили существующие элементы из оригинала, чтобы затем работать над новой идеей.

+0

Если вы удалите 'Form1' - как вы добавляете его из существующего? И почему это не было бы пустым, если бы вы начали «новый проект»? – ispiro

+0

В проводнике решений с выбранным пространством имен щелкните правой кнопкой мыши> Добавить> Существующий элемент - затем выберите элементы Form1, которые уже были закодированы и разработаны из другого проекта. Если Form1 уже существует, что он делает в новом проекте, я получаю сообщение об ошибке, поэтому я удалил его перед добавлением существующего элемента. –

+0

Не думаю, что необходимо вручную добавить 'Form1.Designer.cs' и' Form1.resx'. Я думаю, когда вы вручную добавляете 'Form1.cs', он достаточно умен, чтобы сделать все остальное. – Icemanind

ответ

0

Убедитесь, что вы загрузили Form1, что считаете необходимым загрузить.

По умолчанию Visual Studio 2013 (в Windows 7) создаст папку в документах (C: \ Users * Ваше имя пользователя * \ Documents) под названием «Проекты». Всякий раз, когда вы создаете новый проект из Visual Studio, перейдя в File-> New Project, Visual Studio (по умолчанию) создаст новую папку в папке «Проекты» с именем проекта.

Я думаю, что когда вы «удаляете» Form1, вы на самом деле не удаляете его, просто удаляя его из проекта. Когда вы добавляете Form1, вы просто выбираете его из той же папки проекта, когда вы действительно хотите загрузить его из другой папки проекта.

Попробуйте следующее: в своем текущем проекте (том, где вы удалили Form1, а затем добавили его), в обозревателе решений щелкните правой кнопкой мыши по проекту и выберите «Открыть папку в проводнике файлов».
enter image description here

Это откроет папку проекта на диске. Теперь удалите Form1.cs из Visual Studio и вернитесь в папку проекта. Если Form1.cs все еще находится в этой папке проекта, вы просто удалили его из проекта. Фактические файлы все еще существуют на диске. При добавлении существующих элементов Visual Studio обычно по умолчанию выбирает выбранную папку проекта.

У меня очень сильное подозрение, что Form1, который вы действительно ищете, находится в другой папке проекта. Не зная книги или учебника, за которым вы следуете, я не могу дать вам никаких намеков относительно того, где находится форма 1, которую вы хотите.

+0

Нет, когда я нажимаю правой кнопкой мыши Form1.cs в проводнике решений, он фактически удаляется из проекта, и его файлы также удаляются. Я правильно выбираю Form1 из другого проекта. Помните, что я все еще могу скомпилировать и запустить код только после добавления Form1 из другого проекта. Это просто, когда я открываю Form1 в дизайнере, ни один из элементов управления не появляется. Если я сделаю что-то вроде перетаскивания и изменения размера окна в Form1.cs [Design], попробуйте снова запустить программу. Я получаю сообщение об ошибке. Тип 'TestFormAdd.Form1' уже определяет член, называемый 'InitializeComponent', с теми же параметрами –

+0

Ах. Это имеет больше смысла. Сделайте глобальный поиск внутри Visual Studio (Ctrl-Shift-F) для «InitializeComponent()». Должно быть ровно 2 результата: один в Form1.cs и один Form1.designer.cs. Если есть два или более результата с одним и тем же именем файла, удалите дубликаты файлов. В вашем проекте, вероятно, есть 2 файла Form1.designer.cs, и компилятор не знает, как обрабатывать несколько методов InitializeComponent. – CurtisHx

+0

Возможно, это связано с проблемой. Когда есть форма VS, это выглядит так.
! [Original] (http://i.imgur.com/P1tZeFl.jpg)
Но в новой он не вложен подобным образом.
! [New] (http://i.imgur.com/IgOth25.jpg) –

1

В VS 2013 я выбрал «Добавить существующий элемент» и только что выбрал файлы .cs, не добавляйте файлы * .Designer.cs и * .resx. Затем ждали несколько минут и перезапустили VS2013. Файлы Designer.cs и resx появились как связанные с Forms, но они были исключены. Я щелкнул правой кнопкой мыши и выбрал «Включить в проект». Тогда это сработало.