Как правильно изменить имя элемента формы в C# Visual Studio?
Я использую Visual Studio, я создал форму и добавил кнопку, но, к сожалению, я назвал btn_test1 вместо Btn_test1 (маленькая и большая начальная буква) и дважды щелкнул кнопку, чтобы сгенерировать функцию щелчка, и Visual Studio с радостью сгенерировала: btn_test1_Click () function, а затем пожаловался, что функция не начинается с заглавной буквы.
Я подумал: «Хорошо, без проблем», вернулся и переименовал кнопку в Btn_test1 и изменил функцию щелчка на Btn_test1_Click (), и теперь вместо этого Visual Studio выдает мне ошибку, в которой отсутствует btn_test1_Click ().
У меня вопрос: Какую процедуру я должен был использовать в этом случае?
Если вы не хотите писать длинный ответ, но имеете ссылку на какую-либо документацию, это тоже нормально.
Щелчок правой кнопкой мыши и выбор переименования может быть полезен, поскольку он применяет переименование ко всем случаям использования переменной / свойства / метода / и т. д.
Позвольте мне посмотреть, понял ли я: вы переименовали кнопку И ссылку делегата, по которой щелкнули, на Btn_test1 и Btn_test1_Click соответственно, и вы получаете сообщение об отсутствии btn_test1_clicked ?
Diego Rafael Souza
Уловка: F2 (рефакторинг в коде Visual Studio). Не уверен, что это может быть применено в этом конкретном случае, но я недавно узнал о функции рефакторинга Visual Studio Codes, я знаю, что она работает для имен переменных, но она также может работать и с именами функций. §1: Выберите имя. §2: Нажмите F2. §3: Введите новое имя + Enter. §4: Дважды проверьте, чтобы ничего не напутали. medium.com/@i_AnkurBiswas/…



Ответы 2
Хорошо, в начале заглавная буква не нужна свойства name, я тоже использую VS 2017. Я дам несколько снимков экрана, как переименовать функцию.
Шаг 1: щелкните События кнопки на панели свойств, как показано на следующем изображении. 
Шаг 2: найти событие щелчка и удалить текст


Шаг 3: перейдите в Свойства на панели свойств

Шаг 4: выберите свойство Name кнопки.

Шаг 5: Переименуйте как хотите,

ШАГ 6: Дважды щелкните кнопку на дизайнере, он автоматически создаст функцию с новым именем.
Что касается соглашение об именовании, используйте, как я упоминал на изображении.
например, кнопка для отправки чего-либо может называться btnSend. кстати -> обозначает кнопку. послать -> представляет имя.
Примечание:
После того, как вы успешно переименовали и сгенерировали новый код события щелчка. Старый код события клика просто будет там. Если вам нужно содержимое старого события, скопируйте его в новый код события щелчка.
Кроме того, если вы все еще столкнулись с какой-либо ошибкой, указывается, что старая функция отсутствует. Внимательно прочтите файл Designer.cs и удалите все строки, связанные со старым именем функции.
Я попробовал, и он корректно генерирует новую функцию с правильным именем, но VS по-прежнему жалуется, что старая функция имеет строчную букву, и если я удалю эту функцию, вместо этого я получаю сообщение об ошибке, что функция отсутствует. Однако я узнал о значке молнии из этого, и скриншоты действительно полезны. Однако решение St.Pat «Правый щелчок и переименование» сработало и устранило ошибки.
. Но, видимо, щелчок правой кнопкой мыши и переименование не меняют (имя) в конструкторе, что действительно странно.
поэтому имя функции застряло где-то в файле form.Designer.cs. Найдите файл и выполните поиск по старому имени функции. И удалите все строки со старым именем функции.
. И щелчок правой кнопкой мыши и переименование говорит, что он изменит имя в 2 файлах, есть ли способ узнать, какие 2 файла были изменены?
прочтите файл designer.cs для конкретной формы, вы легко поймете его
Это действительно странно, в Form1.cs функция называется Btn . () (я сокращаю имя здесь), в Form1.Designer.cs она называется кстати . , а в Form1.cs [Дизайн] она называется кстати . . Но насколько я понимаю, Кстати . и кстати . должны быть 2 совершенно разными именами, и у меня должны быть ошибки компиляции или что-то в этом роде? У меня даже нет предупреждения.
Полностью удалите строки Btn . (). Очистите решение и создайте его
Хорошо, это сработало, но только если я сделал это в правильном порядке, иначе Form1.cs [Дизайн] полностью выйдет из строя. Будущим читателям: # 1 используйте правый щелчок и переименуйте. # 2, если это не удается, сгенерируйте новую функцию с правильным именем ПЕРВЫЙ, затем удалите старую, затем перейдите к ранее упомянутым 3 файлам и убедитесь, что правильное имя присутствует во всех файлах, VS может попытаться сбросить имя несколько раз, но сохраните переименовывать вещи, пока не заработает.
C# — изменить название другой формы
Как я могу изменить заголовок Формы 1 с моего От 2? Вот мой код:
Что я делаю неправильно?
2 ответа
Вы должны передать Form1 как параметр в конструкторе Form2.
В методе, который вы хотите показать Form2, вы должны вызывать так;
У вас должен быть фактический экземпляр Form1, который отображается в данный момент.
При отображении формы Form1 сохраните экземпляр в форме Form2. (Я предполагаю, что вы отображаете Form1 из Form2. Если нет, вы должны предоставить этот экземпляр Form1 для Form2 при создании экземпляра Form2)
Раздел 1. Начала разработки Windows Application решений в Visual Studio NET
Для создания Windows Application решения C# (приложения, проекта), после запуска Visual Studio.NET, нажимаем на кнопку в New Project (левая на панели инструментов), или нажимаем комбинацию клавиш Ctrl + Shift + N, или заходим в меню File и далее выбираем New и затем Project. На экране появляется диалоговая панель New Project (Рис.1.).
Рис.1. Диалоговая панель New Project
Project Types: Visual C#;
Templates: Windows Application;
Name: пишем то имя, с которым будет сформирован .exe файл;
Location: директория в которой будет помещен проект (для удобства желательно создать директорию поближе к корню диска, например C:\SamplesC#);
Можно поставить галочку «Create Directory for Solytion» или задать директорию для данного решения в выбранной папке(Browse. ).
В редакторе кода появилась заготовка окна на вкладке Form1.cs[Designe] (Рис. 2.1.), а в папке C:\SamplesC# папка WindowsApplication1 c файлом WindowsApplication.sln (файл проекта решения) и подпапка WindowsApplication со своими подпапками Bin, Obj, Properties, которые пока содержат пустые поддиректории и, в которые, будут помещаться файлы, необходимые для сборки и отладки программы и .exe файл, о чем речь пойдет ниже. Файлы проекта Form1.cs, Form1.Designer.cs, Program.cs и WindowsApplication.csproj располагаются в подпапке WindowsApplication1.
В окне «Solutation Explorer» (Меню Viev | Solutation Explorer) выполним правый клик мышкой на файле проекта — «Form1.cs» — и выберем пункт меню «Viev Code» (или нажимаем F7), вызываем файл кода проекта (Рис. 2.2.):
В отличии от VisualStudio 2003 в данном файле только определения класса формы (Form1) с единственной пока функцией конструктора. Однако это не означает, что функция main исчезла вообще — ее разработчики просто перенесли в другой файл — Program.cs (Рис. 2.3.).
Код, как и в консольном приложении, описанном в любом учебнике по языкам семейства C, содержит статическую функцию Main(). В ней, собственно, и осуществляется инициализация приложения (также как и Borland C++ и многих других языках вызовом Application.Run() — запуском цикла обработки сообщений). При этом создается экземпляр класса Form1, конструктор которого вызывает функцию InitializeComponent(), выполняющую необходимые начальные установки.
И еще одно отличие от VisualStudio 2003 — вынос функций создания контролов, которые будут использоваться в форме приложения и самой формы в файл Form1.Designer.cs.
Возвращаемся к дизайнеру формы (вкладка Form1.cs[Design]), вызовем свойства формы (Properties) в контекстном меню формы (Рис.2.5.), кликнув правой кнопкой мышки на бланке формы (или меню View\Properties Window Ctrl+W, P) и в окне Properties из множества свойств установим:
Свойство Text — Hllo World C#;
BackColor — выберем (клик мышкой на поле и нажать стрелочку вниз) понравившийся нам цвет формы из трех возможных наборов;
Вновь посмотрим код в окне Form1.Designe.cs — изменилась функция InitializeComponent() — в ней появились внесенные изменения:
Однако, не все свойства удается поменять так легко, например имя формы (Form1).просто так поменять (как это было, например, в Delphi и Borland C++ Builder) нельзя — необходимо внести сразу два изменения, а именно, изменить имя формы (свойство Name ) в окне Properties и имя файла Form1.cs в Solutation Explorer. Причина — проект привязан к платформе OS, а файл .cs нет и существуют раздельно.
Далее, изменим свойство Icon (в поле выбора нажимаем кнопочку с тремя точками и из файлов загрузим какую либо картинку) и вновь посмотрим изменения в коде в файле Form1.Designe.cs:
Видно, что здесь появился вызов System.Drawing.Iсon, в качестве параметра которого выступает объект, помещенный в файл ресурсов — Form1.resx. Откроем его (с помощью контекстного меню узла Solutation Explorer — View Code) и убедимся, что такой ресурс есть (это XML файл).
В контекстном меню закладки Form.resx выберем пункт View Designer. В окне Open Width можем выбрать подходящий редактор (для данного случая Resource Editor) и отредактировать ресурс (в данном случае иконку) — Рис. 3.1.
И последний штрих — для того, чтобы сделать визитную карточку C#, вмеcто цвета в BackGround, в свойство формы BackgroundImage добавим картиночку, как показано на рисунке 3.2., и, не забудем поставить для свойство BackgroundImageLayout значение Stretch.
Теперь нажимаем F5 (меню Debug/Start Debuging) и видим созданное приложение (Рис.4.):
Рис.4. Приложение Hello World C#
Параграф 2. >Добавляем кнопочку
В меню View | Toolbox находим контрол Button и, кликнув по нему мышкой, перемещаем указатель на форму (если ошиблись, то кликаем по нужному контролу или вне окна формы) — и далее, кликаем мышкой в границах окна формы — контрол переместился на форму.
Далее, устанавливаем размеры кнопки. Размеры любого контрола, как и приложения в целом, можно и нагляднее устанавливать перетаскиванием маркеров и перетаскиванием всего контрола (при выделенном кликом мышки контроле и нажатой левой клавиши мышки).
Следующий этап — установка свойств кнопки, которые устанавливаются аналогично установки свойств для самой формы (View | Proporties Window или контекстное меню контрола, пункт Properties):
Text — имя кнопки;
BackColor — по вкусу;
Другие свойства пока трогать не будем. Но, чтобы при нажатии кнопочки что то происходило, создадим обработчик события ее нажатия. Переходим на вкладку Events окна Properties и делаем двойной щелчок левой клавишей мышки в поле против события Click (для события нажатия это равнозначно двойному клику мышки по самой кнопке). После чего, в файле Form1.cs решения появится код обработчика:
Вписываем в него следующий код для вывода диалогового окна:
Прежде чем нажать F5 посмотрим как изменился код решения в файле Form1.Designe.cs. Первое и главное — появилась строка объявления для кнопки:
Добавилось и изменения свойств кнопки и задание обработчика события ее нажатия:
Отметим, что кнопка буквально создана динамически в функции InitializeComponent(), что говорит о том, что контролы в C# можно создавать и динамически (достаточно повторить в любом месте файла Form1.cs данный код).
Нажимаем F5 и видим результат (Рис.5.).
Рис.5. Приложение с кнопкой и окном диалога
Вывод сообщения можно выполнить с заголовком
Параграф 3. Добавляем поле ввода и вывода
Уберем BackgrountImage (будем считать, что этот великолепный шарпей свою рекламную функцию выполнил). Также как кнопку, добавляем на форму еще два контрола из ToolBox — TextBox и Label и поставим простую задачу — ввести текст в контрол TextBox и вывести его в элементе Label.
Вначале изменим некоторые свойства например шрифты и цвета контрол, начальный текст надписей и т.п. Особо подберем выравнивание — свойство TextAlign и добавим в обработчик события нажатия кнопки вместо кода вывода сообщений, следующий код:
После выполнения (F5) получим результат (Рис.5.):
Рис.5. Перенос текста
Параграф 4. Добавляем выполнение математической операции
Слегка изменим названия кнопок, тексты надписей и некоторые свойства, как показано на Рис.6., и изменим код обработчика события нажатия кнопки (кстати, быстрый переход к основному обработчику события контрола — двойной клик на контроле в дизайнере формы):
Молчанов Владислав 15.06.2004г.
Адаптировано к VS 2005 29.10.2006г.
Еcли Вы пришли с поискового сервера — посетите мою главную страничку
На главной странице Ва узнаете, как я могу помочь Вам в написании офисной программы любой сложности в соответствии с Вашими запросами . И найдете ряд програм или ссылок на образцы.