System windows forms что это

Добро пожаловать в руководство по классическим приложениям для Windows Forms, платформы пользовательского интерфейса для создания разнообразных клиентских приложений рабочего стола в Windows. Платформа разработки Windows Forms поддерживает широкий набор функций для разработки приложений, включая элементы управления, графику, привязку данных и ввод пользователя. Характерной чертой Windows Forms является использование визуального конструктора с функцией перетаскивания в Visual Studio для упрощения создания приложений Windows Forms.

Существует две реализации Windows Forms.

Реализация с открытым исходным кодом, размещенная на GitHub.

Введение

Windows Forms — это платформа пользовательского интерфейса для создания классических приложений Windows. Она обеспечивает один из самых эффективных способов создания классических приложений с помощью визуального конструктора в Visual Studio. Такие функции, как размещение визуальных элементов управления путем перетаскивания, упрощают создание классических приложений.

В Windows Forms можно разрабатывать графически сложные приложения, которые просто развертывать, обновлять, и с которыми удобно работать как в автономном режиме, так и в сети. Приложения Windows Forms могут получать доступ к локальному оборудованию и файловой системе компьютера, на котором работает приложение.

О том, как создать приложение Windows Forms, см. в руководстве по созданию приложения WinForms.

Создание многофункциональных интерактивных пользовательских интерфейсов

В Windows Forms форма — это визуальная поверхность, на которой выводится информация для пользователя. Обычно приложение Windows Forms строится путем добавления элементов управления в формы и создания кода для реагирования на действия пользователя, такие как щелчки мыши или нажатия клавиш. Элемент управления — это отдельный элемент пользовательского интерфейса, предназначенный для отображения или ввода данных.

При выполнении пользователем какого-либо действия с формой или одним из ее элементов управления создается событие. Приложение реагирует на эти события, как задано в коде, и обрабатывает события при их возникновении.

В Windows Forms предусмотрено множество элементов управления, которые можно добавлять в формы. Например, элементы управления могут отображать текстовые поля, кнопки, раскрывающиеся списки, переключатели и даже веб-страницы. Если предусмотренные элементы управления не подходят для ваших целей, в Windows Forms можно создавать собственные пользовательские элементы управления с помощью класса UserControl.

В Windows Forms имеются многофункциональные элементы управления пользовательского интерфейса, позволяющие эмулировать функции таких сложных приложений, как Microsoft Office. С помощью элементов управления ToolStrip и MenuStrip вы можете создавать панели инструментов и меню, которые содержат текст и изображения, отображают подменю и размещают другие элементы управления, такие как текстовые поля и поля со списками.

Используя функцию перетаскивания конструктора Windows Forms в Visual Studio, можно легко создавать приложения Windows Forms. Просто выделите элемент управления с помощью курсора и поместите его на нужное место в форме. Для преодоления трудностей, связанных с выравниванием элементов управления, конструктор предоставляет такие средства, как линии сетки и линии привязки. С помощью элементов управления FlowLayoutPanel, TableLayoutPanel и SplitContainer можно гораздо быстрее создавать сложные макеты форм.

Наконец, если нужно создать свои собственные элементы пользовательского интерфейса, пространство имен System.Drawing содержит широкий набор классов, необходимых для отрисовки линий, кругов и других фигур непосредственно на форме.

Создание форм и элементов управления

Пошаговые инструкции по использованию этих возможностей можно найти в приведенных ниже разделах справки.

Отображение и обработка данных

Во многих приложениях требуется отображать данные из базы данных, файла XML или JSON, веб-службы или другого источника данных. Windows Forms предоставляет гибкий элемент управления с именем DataGridView для отображения таких табличных данных в традиционном формате строк и столбцов так, что каждый фрагмент данных занимает свою собственную ячейку. С помощью DataGridView можно, помимо прочего, настроить внешний вид отдельных ячеек, зафиксировать строки и столбцы на своем месте, а также обеспечить отображение сложных элементов управления внутри ячеек.

В Windows Forms можно с легкостью подключаться к источникам данных по сети. Компонент BindingSource представляет подключение к источнику данных и содержит методы для привязки данных к элементам управления, перехода к предыдущей или следующей записи, редактирования записей и сохранения изменений в исходном источнике. Элемент управления BindingNavigator предоставляет простой интерфейс на основе компонента BindingSource для перехода между записями.

Вы можете легко создавать элементы управления с привязкой к данным с помощью окна «Источники данных» в Visual Studio. В этом окне отображаются существующие в вашем проекте источники данных, такие как базы данных, веб-службы и объекты. Создавать элементы управления с привязкой к данным можно путем перетаскивания объектов из этого окна в формы проекта. Также можно связывать существующие элементы управления с данными, перетаскивая объекты из окна «Источники данных» в существующие элементы управления.

Другой тип привязки к данным в формах Windows Forms — это параметры. В большинстве приложений требуется сохранять некоторые сведения о состоянии приложения во время выполнения, например, последний известный размер форм, а также данные пользовательских предпочтений, например, место сохранения файлов по умолчанию. Параметры приложения отвечает этим требованиям, предоставляя простой способ хранения обоих типов сведений на клиентском компьютере. После того как вы определите эти параметры с помощью Visual Studio или редактора кода, они сохраняются в XML-файле и автоматически считываются обратно в память во время выполнения.

Развертывание приложений на клиентских компьютерах

После создания приложения необходимо отправить его пользователям, чтобы они могли установить и запустить его на своих клиентских компьютерах. С помощью технологии ClickOnce можно развертывать приложения из Visual Studio всего в несколько щелчков, а затем предоставлять пользователям URL-адрес приложения в Интернете. ClickOnce управляет всеми элементами и зависимостями в приложении и обеспечивает его правильную установку на клиентском компьютере.

Приложения ClickOnce можно настроить для работы только при подключении к сети или для работы как в сетевом, так и в автономном режиме. Если вы указываете, что приложение должно поддерживать работу в автономном режиме, то технология ClickOnce добавляет ссылку на приложение в меню Пуск пользователя. Затем пользователь может открывать приложение без использования URL-адреса.

При обновлении приложения вы публикуете на веб-сервере новый манифест развертывания и новую копию приложения. ClickOnce обнаруживает, что доступно обновление, и обновляет установку пользователя. Таким образом, для обновления старых приложений не требуется писать специальный код.

Источник

System. Windows. Forms. Design Пространство имен

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

Классы

Предоставляет пользовательский интерфейс для настройки свойства Anchor.

Импортирует элементы управления ActiveX и создает оболочку, доступную конструктору.

Предоставляет набор параметров для AxImporter.

Представляет параметр метода размещенного элемента управления ActiveX.

Создает оболочку для элементов управления ActiveX для использования в среде во время разработки.

Предоставляет редактор для задания свойства BorderSides.

Базовый класс конструктора, расширяющий поведение корневого документа проектирования, поддерживающего вложенные компоненты, в режиме конструктора.

Предоставляет пользовательский интерфейс для WindowsFormsComponentEditor.

Предоставляет базовую реализацию для ComponentEditorPage.

Предоставляет настройки для области компонентов конструктора.

Расширяет поведение элемента управления Control в режиме разработки.

Предоставляет доступ к получению и заданию значений параметров для конструктора.

Предоставляет пользовательский интерфейс для задания свойства Dock.

Базовый класс конструктора для расширения поведения в режиме разработки и обеспечения представления корневого уровня в режиме разработки для элемента управления Control, который поддерживает вложенные элементы управления и должен получать сообщения прокрутки.

Предоставляет систематический способ управления обработчиками событий для текущего документа.

Предоставляет вкладку PropertyTab, которая может отображать события для выделения и связывания.

Предоставляет пользовательский интерфейс для выбора имени файла.

Предоставляет пользовательский интерфейс для выбора папки из файловой системы.

Предоставляет диалоговое окно, которое позволяет пользователю выбирать папку. Этот класс не наследуется.

Сериализирует словари строк.

Предоставляет редактор, который может выполнить стандартный поиск файлов точечного рисунка (BMP-файлов).

Определяет набор элементов для производных классов, чтобы предоставить параметры для редактора типов пользовательского интерфейса текстового поля с маской.

Определяет множество полей CommandID, каждое из которых соответствует командной функции, предоставленной средой узла.

Расширяет поведение режима разработки Control, поддерживающего вложенные элементы управления.

Предоставляет базовый класс для вкладок со свойствами.

Базовый класс конструктора для расширения поведения элемента управления Control, который должен получать сообщения прокрутки, в режиме конструктора.

Предоставляет редактор для выбора сочетаний клавиш.

Задает типы, в которых может отображаться элемент ToolStripItem. Этот класс не наследуется.

Предоставляет базовый класс для редакторов, использующих модальный диалог для отображения страницы свойств, похожей на страницу свойств элементов управления ActiveX.

Предоставляет доступ для получения и задания значений параметров для конструктора Windows Forms.

Структуры

Представляет окно и значение, указывающее, как полосы прокрутки окна должны быть оформлены тематически при отображении в конструкторе Visual Studio.

Интерфейсы

Предоставляет методы обработки ссылок к библиотекам ActiveX, библиотекам типов COM или сборкам, а также к управляемым сборкам.

Определяет метод для получения сведений о том, как полосы прокрутки окна должны быть оформлены стилистически при отображении в конструкторе Visual Studio.

Предоставляет доступ к службе редактирования меню.

Разрешает взаимодействие с пользовательским интерфейсом объекта среды разработки, в котором размещается конструктор.

Предоставляет интерфейс для UITypeEditor для отображения Windows Forms или элементов управления в раскрывающейся области элемента управления сетки свойств в режиме разработки.

Перечисления

Элементы действий конструктора, которые могут быть связаны с компонентом.

Определяет идентификатор, используемый для указания корневой папки для обозревателя папок, при выполнении первоначального просмотра.

Определяет идентификаторы, используемые для задания поведения обозревателя FolderNameEditor.FolderBrowser.

Определяет идентификаторы, используемые при указании правил выбора для компонента.

Значение, указывающее, будут ли полосы прокрутки окна и его дочерних элементов оформлены тематически при отображении в конструкторе Visual Studio.

Задает элементы управления, отображаемые в конструкторе.

Источник

Windows Forms overview (Общие сведения о Windows Forms)

В этом обзоре рассматриваются преимущества интеллектуальных клиентских приложений, основные возможности программирования Windows Forms, а также использование Windows Forms для разработки интеллектуальных клиентов, удовлетворяющих запросам современных предприятий и конечных пользователей.

Windows Формы и интеллектуальные клиентские приложения

Windows Forms позволяет разрабатывать интеллектуальные клиенты. Интеллектуальный клиент — это приложение с полнофункциональным графическим интерфейсом, простое в развертывании и обновлении, способное работать при наличии или отсутствии подключения к Интернету и использующее более безопасный доступ к ресурсам на локальном компьютере по сравнению с традиционными приложениями Windows.

Создание многофункциональных интерактивных пользовательских интерфейсов

Windows Forms — это технология интеллектуальных клиентов для NET Framework. Она представляет собой набор управляемых библиотек, упрощающих выполнение стандартных задач, таких как чтение из файловой системы и запись в нее. С помощью такой среды разработки, как Visual Studio, можно создавать интеллектуальные клиентские приложения Windows Forms, которые отображают информацию, запрашивают ввод от пользователей и обмениваются данными с удаленными компьютерами по сети.

В Windows Forms форма — это визуальная поверхность, на которой выводится информация для пользователя. Обычно приложение Windows Forms строится путем помещения элементов управления на форму и написания кода для реагирования на действия пользователя, такие как щелчки мыши или нажатия клавиш. Элемент управления — это отдельный элемент пользовательского интерфейса, предназначенный для отображения или ввода данных.

При выполнении пользователем какого-либо действия с формой или одним из ее элементов управления создается событие. Приложение реагирует на эти события с помощью кода и обрабатывает события при их возникновении. Подробнее см. в разделе Создание обработчиков событий в Windows Forms.

Windows Forms включает широкий набор элементов управления, которые можно добавлять на формы: текстовые поля, кнопки, раскрывающиеся списки, переключатели и даже веб-страницы. Список всех элементов управления, которые можно использовать в форме, представлены в разделе Элементы управления для использования в формах Windows Forms. Если существующий элемент управления не удовлетворяет потребностям, в Windows Forms можно создать пользовательские элементы управления с помощью класса UserControl.

В состав Windows Forms входят многофункциональные элементы пользовательского интерфейса, позволяющие воссоздавать возможности таких сложных приложений, как Microsoft Office. Используя элементы управления ToolStrip и MenuStrip, можно создавать панели инструментов и меню, содержащие текст и рисунки, подменю и другие элементы управления, такие как текстовые поля и поля со списками.

с помощью перетаскивания конструктор Windows Forms в Visual Studio можно легко создавать приложения Windows Forms. Достаточно выделить элемент управления курсором и поместить его в нужное место на форме. Для преодоления трудностей, связанных с выравниванием элементов управления, конструктор предоставляет такие средства, как линии сетки и линии привязки. а также при использовании Visual Studio или компиляции в командной строке можно использовать FlowLayoutPanel TableLayoutPanel SplitContainer элементы управления и для создания расширенных макетов форм за меньшее время.

Наконец, если нужно создать свои собственные элементы пользовательского интерфейса, пространство имен System.Drawing содержит широкий набор классов, необходимых для отрисовки линий, кругов и других фигур непосредственно на форме.

Элементы управления Windows Forms не предназначены для маршалинга между доменами приложений. По этой причине технологии Майкрософт не поддерживают передачу элементов управления Windows Forms через границы AppDomain, хотя на первый взгляд базовый тип Control класса MarshalByRefObject подразумевает такую возможность. Приложения Windows Forms с несколькими доменами приложений поддерживаются только при условии, что элементы управления Windows Forms не передаются через границы доменов приложения.

Создание форм и элементов управления

Пошаговые инструкции по использованию этих возможностей можно найти в приведенных ниже разделах справки.

ОписаниеРаздел справки
Использование элементов управления в формахПрактическое руководство. Добавление элементов управления в Windows Forms
Использование элемента управления ToolStripПрактическое руководство. Создание базового элемента управления ToolStrip со стандартными элементами с помощью конструктора
Создание графических элементов с помощью System.DrawingПриступая к программированию графики
Создание пользовательских элементов управленияПрактическое руководство. Наследование класса UserControl

Отображение и обработка данных

Во многих приложениях нужно отображать данные из базы данных, XML-файла, веб-службы XML или другого источника данных. Windows Forms предоставляет гибкий элемент управления с именем DataGridView для отображения таких табличных данных в традиционном формате строк и столбцов так, что каждый фрагмент данных занимает свою собственную ячейку. С помощью DataGridView можно, помимо прочего, настроить внешний вид отдельных ячеек, зафиксировать строки и столбцы на своем месте, а также обеспечить отображение сложных элементов управления внутри ячеек.

При использовании интеллектуальных клиентов Windows Forms можно легко подключаться к источникам данных по сети. Компонент BindingSource представляет подключение к источнику данных и содержит методы для привязки данных к элементам управления, перехода к предыдущей или следующей записи, редактирования записей и сохранения изменений в исходном источнике. Элемент управления BindingNavigator предоставляет простой интерфейс на основе компонента BindingSource для перехода между записями.

Вы можете легко создавать элементы управления с привязкой к данным с помощью окна «Источники данных». В нем приводятся имеющиеся в проекте источники данных, такие как базы данных, веб-службы и объекты. Создавать элементы управления с привязкой к данным можно путем перетаскивания объектов из этого окна в формы проекта. Также можно связывать существующие элементы управления с данными, перетаскивая объекты из окна «Источники данных» в существующие элементы управления.

Другой тип привязки к данным в формах Windows Forms — это параметры. Большинство интеллектуальных клиентских приложений должны сохранять некоторые сведения о своем состоянии во время выполнения, такие как последние известные размеры форм, а также сохранять пользовательские предпочтения, например место сохранения файлов по умолчанию. Параметры приложения отвечает этим требованиям, предоставляя простой способ хранения обоих типов сведений на клиентском компьютере. После того как вы определите эти параметры с помощью Visual Studio или редактора кода, они сохраняются в XML-файле и автоматически считываются обратно в память во время выполнения.

Отображение и обработка данных

Пошаговые инструкции по использованию этих возможностей можно найти в приведенных ниже разделах справки.

ОписаниеРаздел справки
Использование компонента BindingSourceПрактическое руководство. Связывание элементов управления Windows Forms с компонентом BindingSource с помощью конструктора
работа с ADO.NET источниками данныхПрактическое руководство. Сортировка и фильтрация данных ADO.NET с помощью компонента BindingSource в Windows Forms
Использование окна «Источники данных»Привязка элементов управления Windows Forms к данным в Visual Studio
Работа с параметрами приложенияПрактическое руководство. Создание параметров приложения

Развертывание приложений на клиентских компьютерах

После создания приложения необходимо отправить его пользователям, чтобы они могли установить и запустить его на своих клиентских компьютерах. при использовании технологии ClickOnce можно развертывать приложения из Visual Studio, используя всего несколько щелчков мышью, и предоставить пользователям URL-адрес, указывающий на ваше приложение в интернете. ClickOnce управляет всеми элементами и зависимостями в приложении и обеспечивает правильную установку приложения на клиентском компьютере.

Приложения ClickOnce можно настроить так, чтобы они работали только при подключении к сети или как в сетевом, так и в автономном режиме. при указании того, что приложение должно поддерживать автономную работу, ClickOnce добавляет ссылку на приложение в меню » пуск » пользователя. Пользователь может открыть приложение без использования URL-адреса.

Когда вы обновляете приложение, на веб-сервере публикуется новый манифест развертывания и новая копия приложения. ClickOnce обнаружит, что доступно обновление, и обновите установку пользователя; для обновления старых сборок не требуется пользовательское программирование.

развертывание ClickOnce приложений

Общие сведения о ClickOnce можно найти в разделе Развертывание и безопасность технологии ClickOnce. Пошаговые инструкции по использованию этих возможностей можно найти в приведенных ниже разделах справки.

ОписаниеРаздел справки
Развертывание приложения с помощью ClickOnceПрактическое руководство. Публикация приложения ClickOnce с помощью мастера публикации

Пошаговое руководство: Развертывание вручную приложения ClickOnce

обновление развертывания ClickOnceПрактическое руководство. Управление обновлениями для ClickOnce-приложения
Управление безопасностью с помощью ClickOnceПрактическое руководство. Включение параметров безопасности ClickOnce-приложений

Другие элементы управления и функции

Реализация других элементов управления и функций

Пошаговые инструкции по использованию этих возможностей можно найти в приведенных ниже разделах справки.

Источник

Application Класс

Определение

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

Предоставляет методы и свойства static для управления приложением, например методы для запуска и остановки приложения, для обработки сообщений Windows и свойства для получения сведений о приложении. Этот класс не наследуется.

Примеры

В следующем примере кода показаны числа из списка в форме. Каждый раз при щелчке button1 приложение добавляет в список еще один номер.

Вызов метода Exit приведет к сбою при частичном доверии.

Комментарии

Applicationкласс содержит методы для запуска и завершения приложений и потоков, а также для обработки Windows сообщений следующим образом:

Run запускает цикл обработки сообщений приложения в текущем потоке и, при необходимости, делает форму видимой.

Exit или ExitThread останавливает цикл обработки сообщений.

DoEvents обрабатывает сообщения, пока программа находится в цикле.

AddMessageFilterдобавляет фильтр сообщений в конвейер обмена сообщениями приложения для отслеживания сообщений Windows.

IMessageFilter позволяет предотвращать возникновение события или выполнять специальные операции перед вызовом обработчика событий.

Этот класс содержит CurrentCulture Свойства и, CurrentInputLanguage позволяющие получить или задать сведения о языке и региональных параметрах для текущего потока.

Нельзя создать экземпляр этого класса.

Свойства

Получает значение, определяющее, может ли вызывающий объект выйти из этого приложения.

Получает путь для данных приложения, являющихся общими для всех пользователей.

Получает раздел реестра для данных приложения, являющихся общими для всех пользователей.

Возвращает название компании, сопоставленное с приложением.

Получает или задает данные о языке и региональных параметрах для текущего потока.

Получает или задает текущий язык ввода для текущего потока.

Получает путь для исполняемого файла, запустившего приложение, включая исполняемое имя.

Возвращает текущий режим высокого DPI для данного приложения.

Получает путь для данных приложения локального неперемещающегося пользователя.

Получает значение, указывающее, существует ли цикл обработки сообщений в данном потоке.

Получает коллекцию открытых форм, принадлежащих приложению.

Получает название продукта, сопоставленного с данным приложением.

Получает версию продукта, сопоставленную с данным приложением.

Получает значение, указывающее, будет ли текущее приложение прорисовывать элементы управления с помощью визуальных стилей.

Получает или задает строку формата для использования в заголовках окон верхнего уровня, когда они отображаются с предупреждающим объявлением.

Получает путь для исполняемого файла, запустившего приложение, не включая исполняемое имя.

Получает путь для данных приложения пользователя.

Получает раздел реестра для данных приложения пользователя.

Возвращает значение, указывающее, включены ли визуальные стили для приложения.

Получает или задает значение, которое указывает, используется ли курсор ожидания для всех открытых форм приложения.

Получает значение, указывающее, каким образом визуальные стили применяются к окну приложения.

Методы

Добавляет фильтр сообщений для мониторинга сообщений Windows при их маршрутизации к местам назначения.

Обрабатывает все сообщения Windows, которые в данный момент находятся в очереди сообщений.

Включает визуальные стили для приложения.

Определяет, равен ли указанный объект текущему объекту.

Сообщает всем средствам переноса сообщений, что они должны завершить работу, а затем закрывает все окна приложения после обработки сообщений.

Сообщает всем средствам переноса сообщений, что они должны завершить работу, а затем закрывает все окна приложения после обработки сообщений.

Выходит из цикла обработки сообщений в текущем потоке и закрывает все окна в потоке.

Запускает любые фильтры для сообщения окна и возвращает копию измененного сообщения.

Служит хэш-функцией по умолчанию.

Возвращает объект Type для текущего экземпляра.

Создает неполную копию текущего объекта Object.

Инициализирует OLE в текущем потоке.

Вызывает событие Idle в размещенных скриптах.

Регистрирует ответный вызов, чтобы проверить, выполняется ли цикл обработки сообщений в размещенных средах.

Удаляет фильтр сообщений из средства переноса сообщений приложения.

Завершает работу приложения и немедленно запускает новый экземпляр.

Запускает стандартный цикл обработки сообщений приложения в текущем потоке, без формы.

Запускает стандартный цикл обработки сообщений приложения в текущем потоке с ApplicationContext.

Запускает стандартный цикл обработки сообщений приложения в текущем потоке и делает указанную форму видимой.

Задает значение по умолчанию Font для процесса.

Задает режим высокого DPI процесса.

Приостанавливает работу системы или переводит ее в спящий режим или же запрашивает приостановку работы системы или перевод ее в спящий режим.

Указывает, как приложение должно реагировать на необработанные исключения.

Предоставляет приложению инструкции, определяющие, как приложение должно отвечать на необработанные исключения, при необходимости применяя поведение, зависящее от потока.

Возвращает строку, представляющую текущий объект.

Отменяет регистрацию ответного вызова цикла обработки сообщений, сделанного с помощью метода RegisterMessageLoop(Application+MessageLoopCallback).

События

Происходит при закрытии приложения.

Происходит при переходе приложения в модальное состояние.

Происходит, когда приложение заканчивает обработку и собирается перейти в состояние простоя.

Возникает, когда приложение собирается выйти из модального состояния.

Происходит при выдаче неперехваченного исключения потока.

Происходит при закрытии потока. Перед закрытием главного потока для приложения вызывается данное событие, за которым следует событие ApplicationExit.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *