I am currently studying Visual Basic .Net but I’m currently using Linux Mint 18 Mate and the only Visual Studio that’s available is Visual Studio Code. I was wondering if it’s able to create Windows Form Application?
Edit: I just want to update this past as technology has progressed and https://learn.microsoft.com/en-us/dotnet/core/install/linux only time will make this question obsolete as Microsoft is releasing some of it technologies to linux
asked Nov 12, 2016 at 11:06
Pyke KaisoraPyke Kaisora
4001 gold badge3 silver badges8 bronze badges
0
There is an even easier way. From the terminal type this:
dotnet new winforms
answered Jul 16, 2021 at 11:46
4
Windows Forms is exclusive to the [Desktop] Windows platform. You can certainly not use VSCode for that, not even in Windows, as VSCode doesn’t include form designer tools like the regular Visual Studio IDE. So even in case you could compile, there are still lacking all the facilities needed for designing.
You can rather try with MonoDevelop for Linux (see https://en.wikipedia.org/wiki/MonoDevelop)
Edit:
A year later and it looks like support is coming. My guess is it won’t be as nice as running on windows but it will look better than a Java app: https://github.com/dotnet/winforms
answered Feb 7, 2018 at 21:37
JaimeJaime
5,8104 gold badges23 silver badges50 bronze badges
3
For those who come here looking for an answer to the question, but for Windows…
Building forms in VSCode is easy. Some would argue easier than in Visual Studio.
-
Download and install the latest dotnet sdk
-
Open a new folder in VScode.
-
From the terminal type «dotnet new Console»
-
This will have created some files. When prompted to add necessary files, select yes.
-
From folder view, Select your .csproj file and replace its contents with the following:
<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <TargetFramework>net4.7.2</TargetFramework> <UseWPF>true</UseWPF> <UseWindowsForms>true</UseWindowsForms> </PropertyGroup> </Project>
Now, Create a new file and Name it Form1.cs. Populate it as Follows:
using System.Windows.Forms;
using System;
public class Form1 : Form
{
public void FormLayout()
{
this.Name = "Form1";
this.Text = "Form1";
this.Size = new System.Drawing.Size(500, 500);
this.StartPosition = FormStartPosition.CenterScreen;
}
}
Lastly, Replace the contents of your Program.cs with the following code:
using System;
using System.Windows.Forms;
public class Program
{
public static Form1 form = new Form1();
[STAThread]
static void Main(string[] args)
{
form.FormLayout();;
Application.Run(form);
}
}
- Save. Now, in the terminal type «dotnet run» and press enter. A form will appear.
This should give you the foundational understanding necessary to build any windows forms project in vscode. You can also build custom controls but that is another beast entirely.
I have created a sample project for those interested Example Here
answered Jul 9, 2021 at 9:47
2
According to the link below, VS Code does not support Desktop .NET Framework. Because VS Code is design to be Cross-Platform. Meaning that you can’t work with «windows forms».
https://code.visualstudio.com/docs/languages/csharp
Side-Note:
I was wondering the same question while coding C# in Windows when I received «include System.Windows.Forms» was missing assembly references.
answered Dec 22, 2017 at 3:24
0
However if you want to develop Windows Based Applications using C#, you can use MonoDevelop Application in Linux for sure..
answered Feb 26, 2021 at 19:44
0
I am currently studying Visual Basic .Net but I’m currently using Linux Mint 18 Mate and the only Visual Studio that’s available is Visual Studio Code. I was wondering if it’s able to create Windows Form Application?
Edit: I just want to update this past as technology has progressed and https://learn.microsoft.com/en-us/dotnet/core/install/linux only time will make this question obsolete as Microsoft is releasing some of it technologies to linux
asked Nov 12, 2016 at 11:06
Pyke KaisoraPyke Kaisora
4001 gold badge3 silver badges8 bronze badges
0
There is an even easier way. From the terminal type this:
dotnet new winforms
answered Jul 16, 2021 at 11:46
4
Windows Forms is exclusive to the [Desktop] Windows platform. You can certainly not use VSCode for that, not even in Windows, as VSCode doesn’t include form designer tools like the regular Visual Studio IDE. So even in case you could compile, there are still lacking all the facilities needed for designing.
You can rather try with MonoDevelop for Linux (see https://en.wikipedia.org/wiki/MonoDevelop)
Edit:
A year later and it looks like support is coming. My guess is it won’t be as nice as running on windows but it will look better than a Java app: https://github.com/dotnet/winforms
answered Feb 7, 2018 at 21:37
JaimeJaime
5,8104 gold badges23 silver badges50 bronze badges
3
For those who come here looking for an answer to the question, but for Windows…
Building forms in VSCode is easy. Some would argue easier than in Visual Studio.
-
Download and install the latest dotnet sdk
-
Open a new folder in VScode.
-
From the terminal type «dotnet new Console»
-
This will have created some files. When prompted to add necessary files, select yes.
-
From folder view, Select your .csproj file and replace its contents with the following:
<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <TargetFramework>net4.7.2</TargetFramework> <UseWPF>true</UseWPF> <UseWindowsForms>true</UseWindowsForms> </PropertyGroup> </Project>
Now, Create a new file and Name it Form1.cs. Populate it as Follows:
using System.Windows.Forms;
using System;
public class Form1 : Form
{
public void FormLayout()
{
this.Name = "Form1";
this.Text = "Form1";
this.Size = new System.Drawing.Size(500, 500);
this.StartPosition = FormStartPosition.CenterScreen;
}
}
Lastly, Replace the contents of your Program.cs with the following code:
using System;
using System.Windows.Forms;
public class Program
{
public static Form1 form = new Form1();
[STAThread]
static void Main(string[] args)
{
form.FormLayout();;
Application.Run(form);
}
}
- Save. Now, in the terminal type «dotnet run» and press enter. A form will appear.
This should give you the foundational understanding necessary to build any windows forms project in vscode. You can also build custom controls but that is another beast entirely.
I have created a sample project for those interested Example Here
answered Jul 9, 2021 at 9:47
2
According to the link below, VS Code does not support Desktop .NET Framework. Because VS Code is design to be Cross-Platform. Meaning that you can’t work with «windows forms».
https://code.visualstudio.com/docs/languages/csharp
Side-Note:
I was wondering the same question while coding C# in Windows when I received «include System.Windows.Forms» was missing assembly references.
answered Dec 22, 2017 at 3:24
0
However if you want to develop Windows Based Applications using C#, you can use MonoDevelop Application in Linux for sure..
answered Feb 26, 2021 at 19:44
0
Первое приложение с .NET CLI
Последнее обновление: 11.11.2022
Для создания графических интерфейсов с помощью платформы .NET применяются разные технологии — Window Forms, WPF, UWP.
Однако наиболее простой и удобной платформой до сих пор остается Window Forms или сокращенно WinForms. Данное руководство ставит своей целью дать понимание принципов создания графических интерфейсов с помощью технологии WinForms
и работы основных элементов управления.
Создадим первое приложение на C# и Windows Forms. Что нам для этого потребуется? Прежде всего необходим текстовый редактор для написания кода программы.
Можно взять любой понравившийся текстовый редактор, например, Visual Studio Code
Также для компиляции и запуска программы нам потребуется .NET SDK. Для его установки перейдем на официальный сайт по ссылке
.NET SDK
После установки .NET SDK для первого проекта определим какую-нибудь папку. Например, в моем случае это будет папка C:\dotnet\winforms\helloapp.
Откроем терминал/командную строку и перейдем к созданной папке проекта с помощью команды cd
cd C:\dotnet\winforms\helloapp
В данном случае мы для создания и запуска проекта мы будем использовать встроенную инфраструктуру .NET CLI, которая устанавливается вместе с .NET SDK.
Для создания проекта в .NET CLI применяется команда dotnet new, после которой указывается тип проWindows Formsекта. Для создания проекта
Windows Forms применяется шаблон — winforms. Поэтому введем в терминале команду
После выполнения этой команды у нас будет создан следующий проект:
Структура проекта Windows Forms
Рассмотрим базовую структуру простейшего стандартного проекта Windows Forms:
-
helloapp.csproj: стандартный файл проекта C#, который соответствует назанию проекта (по умолчанию названию каталога) и описывает все его настройки.
-
helloapp.csproj.user: дополнительный файл проекта C#, который хранит специфичные для текущего пользователя настройки.
-
Form1.cs: содержит класс формы, которая по умолчанию запускается при старте приложения
-
Form1.Designer.cs: он содержит определение компонентов формы, добавленных
на форму в графическом дизайнере (графический дизайнер Windows Forms на данный момент официально доступен только в Visual Studio) -
Program.cs: определяет класс Program, который запускается при старте приложения и запускает форму Form1
Например, посмотрим на содержимое файла helloapp.csproj
<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>WinExe</OutputType> <TargetFramework>net7.0-windows</TargetFramework> <Nullable>enable</Nullable> <UseWindowsForms>true</UseWindowsForms> <ImplicitUsings>enable</ImplicitUsings> </PropertyGroup> </Project>
Для компиляции приложения Windows Forms указаны следующие настройки:
-
OutputType: определяет выходной тип проекта. Должен иметь значение WinExe — то есть выполняемое приложение с
расширением exe под Windows -
TargetFramework: определяет применяемую для компиляции версию фреймворка .NET. Поскольку при создании проекта
была выбрана версия .NET 7, а сам проект зависит от компонентов Windows, то здесь должно быть значение net7.0-windows -
Nullable: подключает в проект функционалность ссылочных nullable-типов
-
UseWindowsForms: указывает, будет ли проект использовать Windows Forms (для этого устанавливается значение
true
) -
ImplicitUsings: подключает в проект функциональность неявно подключаемых глобальных пространств имен
Запуск проекта
Проект по умолчанию не представляет какой-то грандиозной функциональности, тем не менее этот проект мы уже можем запустить. Итак, запустим проект. Для этого выполним команду
При запуске запускается графическая форма, код которой определяет класс Form1:
Запуск приложения
Файл Program.cs определяет точку входа в приложение:
namespace helloapp; static class Program { [STAThread] static void Main() { ApplicationConfiguration.Initialize(); Application.Run(new Form1()); } }
Метод Main снабжен атрибутом [STAThread]. Этот атрибут, грубого говоря,
необходим для корректной работы компонентов Windows. В самом методе сначала вызывается метод
ApplicationConfiguration.Initialize()
который устанавливает некоторую базовую конфигурацию приложения
Затем вызывается метод
Application.Run(new Form1());
в который передается объект отображаемой по умолчанию на экране формы.
То есть, когда мы запустим приложение, сработает метод Main, в котором будет вызван метод Application.Run(new Form1())
,
благодаря чему мы увидим форму Form1 на экране.
Определение формы
Теперь посмотрим на определение формы и немного изменим его. Для этого откроем файл Form1.cs в текстовом редакторе. По умолчанию он выглядит следующим образом:
namespace helloapp; public partial class Form1 : Form { public Form1() { InitializeComponent(); } }
Класс формы — Form1 представляет графическую форму — фактически то окно, которое мы увидим на экране при запуске проекта.
Этот класс определяется как частичный (с модификатором partial) и наследуется от встроенного класса Form,
который содержит базовую функциональность форм.
В самом классе Form1 определен по умолчанию только конструктор, где вызывается метод InitializeComponent(), который выполняет инициализацию компонентов формы из файла дизайнера
Form1.Designer.cs. По сути именно код этого файла передается выше через вызов InitializeComponent()
Теперь изменим его код следующим образом:
namespace helloapp; public partial class Form1 : Form { public Form1() { InitializeComponent(); // определяем кнопку Button button = new Button(); // текст кнопки button.Text ="Click"; // положение кнопки button.Location = new Point(50, 50); // размер кнопки button.Size = new Size { Width = 80, Height = 30 }; // обработчик нажатия кнопки button.Click += (o, e) => MessageBox.Show("Hello METANIT.COM!"); // добавление кнопки на форму this.Controls.Add(button); } }
В данном случае на форму добавляется кнопка, и у нее настраиваются различные свойства, как текст, положение на форме, размер, а также обработчик нажатия.
Заново запустим проект, и нам отобразится та же форма, которая теперь будет содержать кнопку. И по нажатию на кнопку появится маленькое окно с сообщением.
Добрый вечер! Подскажите начинающему, как windows форму создать форму в c# c нуля? Есть конечно, специальные готовые редакторы, но хотелось бы изучить это всё самому и самому писать ручками. Да бы для лучшего усвоения и понимания механизмов и принципов работы в C#.
Порыскав в сети, нашёл вот это:
C# | ||
|
но ругается VSCode, даёт такую ошибку….
\Desktop\WorkC#\Program.cs(9,22): error CS0234: Тип или имя пространства имен «Forms» не существует в пространстве имен «System.Window
s» (возможно, отсутствует ссылка на сборку). [C:\Users\shubi\Desktop\WorkC#\WorkC#.csproj]
C:\Users\shubi\Desktop\WorkC#\Program.cs(13,12): error CS0116: Пространство имен не может напрямую включать в себя такие элементы, как методы или оп
ераторы [C:\Users\shubi\Desktop\WorkC#\WorkC#.csproj]
C:\Users\shubi\Desktop\WorkC#\Program.cs(13,12): error CS1520: Метод должен иметь тип возвращаемого значения [C:\Users\shubi\Desktop\WorkC#\WorkC#.c
sproj]
C:\Users\shubi\Desktop\WorkC#\Program.cs(13,12): error CS0501: «<invalid-global-code>.<invalid-global-code>()» должен объявлять тело, так как он не
помечен модификатором abstract, extern или partial. [C:\Users\shubi\Desktop\WorkC#\WorkC#.csproj]
Ошибка сборки. Устраните ошибки сборки и повторите попытку.
Windows Forms в Visual Studio Code: подробный обзор и руководство
Введение:
Visual Studio Code — это популярная, мощная и бесплатная среда разработки, разработанная Microsoft. В отличие от полной версии Visual Studio, Visual Studio Code предоставляет ряд удобных и простых в использовании инструментов для разработки приложений с использованием различных языков программирования. Одним из языков, который можно использовать в Visual Studio Code, является C#, и для создания графического интерфейса можно использовать технологию Windows Forms.
Windows Forms – это технология .NET Framework, предназначенная для создания графических пользовательских интерфейсов в Windows-приложениях. Это классический подход к созданию приложений с использованием элементов управления, таких как кнопки, текстовые поля и радиокнопки, а также размещение их на форме.
В данной статье мы рассмотрим, как создавать Windows Forms приложения в Visual Studio Code, начиная с настройки среды разработки и заканчивая созданием простого примера приложения.
Шаг 1: Установка Visual Studio Code:
Первым шагом является установка Visual Studio Code. Вы можете скачать его с официального сайта Microsoft для вашей операционной системы и установить, следуя инструкциям установщика.
Шаг 2: Установка расширений:
После установки Visual Studio Code откройте его и перейдите в раздел «Extensions», нажав на значок с четырьмя квадратами слева или использовав комбинацию клавиш `Ctrl+Shift+X`.
В поисковой строке введите «C#» и найдите официальное расширение под названием «C# for Visual Studio Code». Установите расширение, нажав кнопку «Install».
После установки расширения перезапустите Visual Studio Code, чтобы изменения вступили в силу.
Шаг 3: Создание нового проекта:
Теперь, когда у вас есть Visual Studio Code и установлено расширение C#, вы можете создать новый проект. Для этого выберите пункт меню «File» и затем «New File». В появившемся окне сохраните файл с расширением `.csproj`, например, «MyWindowsFormsApp.csproj».
Откройте редактор Visual Studio Code и перейдите в папку с вашим проектом, кликнув правой кнопкой мыши на панели с названием проекта, а затем выберите пункт «Open in Integrated Terminal». Это позволит вам использовать команду `dotnet` в терминале Visual Studio Code.
Шаг 4: Установка шаблона проекта:
Чтобы создать Windows Forms приложение, нам нужно установить шаблон проекта. В терминале Visual Studio Code введите следующую команду:
dotnet new winforms
Эта команда создаст все необходимые файлы и папки для Windows Forms приложения.
Шаг 5: Запуск приложения:
После установки шаблона проекта вы можете запустить приложение. В терминале Visual Studio Code введите следующую команду:
dotnet run
Эта команда скомпилирует и запустит приложение. Вы увидите окно приложения с заголовком «Windows Forms App», которое будет реагировать на различные события, такие как нажатие кнопок.
Шаг 6: Редактирование приложения:
Теперь, когда у вас есть работающее приложение Windows Forms, вы можете начать редактирование его исходного кода. Откройте файл «Form1.cs» в редакторе Visual Studio Code и поэкспериментируйте с элементами управления, кодом и событиями, чтобы подготовить ваше приложение к использованию.
Шаг 7: Добавление новых форм:
Если вы хотите добавить новую форму к вашему проекту, в терминале Visual Studio Code введите следующую команду:
dotnet new winforms --name MyNewForm
Эта команда создаст новый файл «MyNewForm.cs» и связанные файлы для новой формы в вашем проекте. Затем вы можете открыть этот файл в редакторе и настроить его, добавлять новые элементы управления и логику, как и для первой формы.
Заключение:
Windows Forms является простым и удобным инструментарием для создания графических приложений в Visual Studio Code с использованием C#. Шаги, описанные в этой статье, помогут вам начать работу с Windows Forms и создать свое первое приложение.
Обратите внимание, что здесь представлен только базовый обзор, и существует множество возможностей и функций, которые можно использовать в Windows Forms приложениях. Следование документации и изучение ресурсов поможет вам лучше понять и использовать Windows Forms в своих проектах.
В заключение, Windows Forms и Visual Studio Code предоставляют мощные инструменты для создания графических приложений, и с их помощью вы сможете создавать удивительные пользовательские интерфейсы и функциональность для различных проектов.