Отправляет email-рассылки с помощью сервиса Sendsay

Статьи по Visual Basic.NET

  Все выпуски  

Создание пользовательского элемента управления на основе класса UserControl


Информационный Канал Subscribe.Ru

Visual Basic.NET
Лучшие статьи с сайта www.p-lib.pp.ru
  Главная | Новости | Статьи | Каталог | Софт | Регистрация | Поиск

Приглашаем авторов статей к сотрудничеству с сайтом. Для того чтобы разместить на сайте статью надо заполнить форму или связаться с нами по E-Mail

Предлагаем владельцам сайтов добавить сабя в каталог на нашем сайте.

NEW!  Все желающие могут предложить свои темы для следующих рассылок. Для этого свяжитесь со мной по E-Mail. Каждое предложение будет рассмотрено.

Новые статьи на сайте

1. Как получить текушее время?
Описывается метод для получения текущего времени.

2. Загрузка файлов из Интернета
Описываются методы класса WebClient. В частности на примере загрузки картинки и текстового файла из Интернета.

3. Как убрать значок выполняемого приложения из строки состояния Windows
В статье расказывается как убрать значёк программы из строки состояния Windows. В Visual Basic.NET это очень просто.

4. Алгоритм Кнута-Морриса-Пратта
При построении конечного автомата для поиска подстроки в тексте легко построить переходы из начального состояния в конечное принимающее состояние: эти переходы помечены символами подстроки.

5. Создание многопоточного приложения в VB.NET
В Visual Basic 6 разработка многопоточных приложений была утомительной задачей - создание новых потоков порождало многочисленные ошибки. В VB.NET картина полностью изменилась, сейчас Вы имеете простоту и мощность Java во время работы с потоками.

6. Двойная буферизация
Для пердотвращения мерцания при перерисовке изображения используют двойную буферизацию. Она обеспечивает построение изображения сначало в памяти.

7. Задание фонового рисунка его прорисовкой
Фоновый рисунок можно создать, выведя его в контекст графического устройства формы, т. е. обработав событие Paint или реализовав метод OnPaintBackground.

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

9. Элемент управления FileSystemWatcher и отслеживание изменений файловой системы
Элемент управления FileSystemWatcher является экземпляром класса FileSystemWatcher пространства имён System.IO. Он применяется для отслеживания изменений в файловой системе.

10. Определение IP-адреса компьютера
Для определения IP-адреса компьютера необходимо воспользоваться классом IPHostEntry...

Свежие компьютерные новости

18.01.2006 Обнародована статистика продаж игровых консолей за 2005 год

18.01.2006 Microsoft продлевает сроки клиентской поддержки ОС семейства XP

18.01.2006 Слух: Intel полностью откажется от бренда Pentium

18.01.2006 Первые заплатки для Windows Vista

18.01.2006 Экстремальный ноутбук Raptor 766X с двумя видеоконтроллерами

18.01.2006 Microsoft выпустит клавиатуру для "Макинтошей"

12.01.2006 Google откроет книжный интернет-магазин

12.01.2006 Opera Software выпускает браузер для бытовой техники

Создание пользовательского элемента управления на основе класса UserControl

В Visual Basic.NET имеется класс UserControl пространства имен System.Windows.Forms, позволяющий создавать любые компоненты. В данной статье на примере конструирования элемента управления InputControl (блок ввода данных с проверкой) будет продемонстрировано, как такие компоненты создаются. Этот элемент предназначен для ввода имени и фамилии пользователя, которые устанавливаются или возвращаются свойствами FirstName и LastName. В элементе управления предусмотрена проверка того, остались ли какие-то данные не введенными. Кроме того, в элемент управления внедрен графический объект, имитирующий перемещающийся источник света.

Итак, для того чтобы создать пользовательский элемент управления, выберите команду File | New | Project. На экране отобразится окно New Project. Выберете значок Windows Control Library из списка проектов и введите имя проекта, например InputControl в поле Name. Нажмите кнопку OK.

В редакторе кода будет создан класс UserControl1, который расширяет класс UserControl. Класс UserControl инкапсулирует в себе методы, свойства и события, необходимые для работы с пользовательским элементом управления

Public Class UserControl1
    Inherits System.Windows.Forms.UserControl

Переименуйте класс UserControl1 в InputControl. Используя окно Solution Explorer, переименуйте также файл UserControl1.vb и InputControl.vb. С помощью панели инструментов ToolBox добавьте в проект надписи, два поля и таймер.

Установите значения элементов управления в соответствии с таблицей.

Элемент управления Свойство Значение
Надпись Name lblFirstName
Text First Name
Поле Name txtFirstName
Text ""
Надпись Name lblLastName
Text LastName
Поле Name txtLastName
Text ""
Надпись Name lblAdd
Text ""
Таймер Name tmrAdd

Добавьте в модуль пользовательского элемента управления директиву импорта вспомогательного пространства имен

Imports System.Drawing.Drawing2D

а затем добавьте следующий код.

Private m_FirstName As String
Private m_LastName As String
Private rnd As Random

Private Sub InputControl_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
    SetMyBounds()
    tmrAdd.Interval = 500
    tmrAdd.Enabled = True
    lblFirstName.TextAlign = ContentAlignment.MiddleLeft
    lblLastName.TextAlign = ContentAlignment.MiddleLeft
End Sub

Private Sub InputControl_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Resize
    SetMyBounds()
End Sub

Private Sub SetMyBounds()
    Dim w, h As Integer
    w = Me.Width : h = Me.Height
    lblFirstName.SetBounds(w / 10, 0, 1 / 2 - w / 10, h / 2)
    txtFirstName.SetBounds(w / 2, 0, w / 2, h / 2)
    lblLastName.SetBounds(w / 10, h / 2, w / 2 - w / 10, h / 2)
    txtLastName.SetBounds(w / 2, h / 2, w / 2, h / 2)
    lblAdd.SetBounds(0, 0, w / 10, h)
End Sub

Public Property FirstName() As String
    Get
        m_FirstName = txtFirstName.Text
        Return m_FirstName
    End Get
    Set(ByVal Value As String)
        m_FirstName = Value
        txtFirstName.Text = m_FirstName
    End Set
End Property

Public Property LastName() As String
    Get
        m_LastName = txtLastName.Text
        Return m_LastName
    End Get
    Set(ByVal Value As String)
        m_LastName = Value
        txtLastName.Text = m_LastName
    End Set
End Property

Private Sub InputControl_Validated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Validated
    If txtFirstName.TextLength = 0 Then
        MessageBox.Show("What about the First Name")
    End If
    If txtLastName.TextLength = 0 Then
        MessageBox.Show("What about the Last Name")
    End If
End Sub

Private Sub tmrAdd_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles tmrAdd.Tick
    lblAdd.Refresh()
End Sub

Private Sub lblAdd_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles lblAdd.Paint
    Static a As Integer
    Dim b As LinearGradientBrush = New LinearGradientBrush(New Rectangle(0, 0, lblAdd.Width, lblAdd.Height), Color.Red, Color.Yellow, a)
    e.Graphics.FillEllipse(b, 0, 0, lblAdd.Width, lblAdd.Height)
    a = (a + 10) Mod 360
End Sub

Книги с Озона

XML для разработчиков-профессионалов .NET XML для разработчиков-профессионалов .NET

В настоящее время XML представляет собой устоявшуюся технологию, применяемую для описания и передачи данных. Она оказывает существенное влияние практически на все аспекты разработки ПО. При создании .NET Framework компания Microsoft стремилась использовать преимущества XML везде, где только возможно. Никакая другая технология не является столь тесно связанной с .NET, как XML, причем не только на уровне разработчика, но и в виде основополагающей технологии системы в целом.
Цель настоящей книги - предоставить читателю достаточную информацию для того, чтобы он смог использовать XML в рамках .NET Framework наиболее эффективным способом. В книге подробно описывается применение всех библиотечных классов .NET Framework, относящихся к XML, для манипулирования, проверки допустимости, преобразования и сериализации XML-данных с использованием как C#, так и Visual Basic .NET.

Основные темы книги:
- Чтение и запись XML
- Поиск по DOM и XSL-преобразования XML
- Проверка допустимости и сериализация XML
- MSXML в сравнении с System.Xml
- XML-поддержка ADO.NET и ASP.NET
- Web-службы и SOAP

Заказать на Озоне

XML для профессионалов XML для профессионалов

Язык XML используется практически в каждом аспекте программирования. С самого начала он был спроектирован как язык разметки, сочетающий в себе мощь и гибкость с простым для изучения синтаксисом. Разработанный как открытый, расширяемый, понятный язык, XML представляет собой стандарт консорциума W3C, позволяющий совместно использовать данные в среде различных приложений, платформ и сети Интернет.

Грамотно написанная, понятная, практичная и авторитетная, книга "XML для профессионалов" заостряет внимание на разработке реальных приложений, использующих XML в качестве базовой технологии. Она предоставляет примеры проектирования и показывает, как можно организовать взаимодействие использующих XML приложений с приложениями Web и системами баз данных.Независимо от того, отдаете ли вы предпочтение обмену данными или визуальному моделированию, эта книга охватывает все соответствующие технологии.

Книга "XML для профессионалов" предназначена для тех, кто хочет использовать язык XML для построенияприложений и систем. Разработчики Web-сайтов могут изучить методы, позволяющие им перевести свои сайты на следующий уровень сложности. Программисты и программные архитекторы узнают, как XML вписывается в их системы и как с его помощью можно решить проблему интеграции приложений.

В книге приводятся:
Подробное разъяснение синтаксиса XML на практических примерах;
Спецификации W3C, относящиеся к XML;
Обработка документов XML с помощью модели DOM и SAX;
Методы отображения документов XML с помощью языков CSS, XSL и WML;
Манипулирование структурами документов с помощью XSL;
Создание эффективных моделей данных при разработке языков разметки;
Организация взаимодействия использующих XML приложений с Web-приложениями и базамиданных;
Введение в WAP, прикладной протокол беспроводной связи

Заказать на Озоне

.NET Framework. Библиотека классов .NET Framework. Библиотека классов

Эта книга рассчитана на среднего или опытного программиста. Она познакомит вас с богатыми комплексными возможностями Framework, которые используются программистами для написания приложений .NET. Общая библиотека классов Framework .NET содержит огромное множество кода, облегчающего написание больших приложений от графики до баз данных, и позволяющего максимально использовать новые возможности, предоставляемые платформой .NET.

Заказать на Озоне

Последнии статьи по Delphi

   -  Оператор перехода (GoTo)

   -  Бегущая строка (Метод III)

   -  Методика модификации программ для скрытия их от антивирусов

   -  Нестандартные заголовки

   -  Создание бегущей строки в Delphi

   -  Введение в реккурсию

   -  Перевод в Delphi-приложениях

   -  Сравнительный анализ технологий CORBA и COM - Часть 3

   -  Сравнительный анализ технологий CORBA и COM - Часть 2

   -  Сравнительный анализ технологий CORBA и COM - Часть 1

Советую посетить

Портал для Delphi программиста - Быстро развивающийся портал о программирование на языке Pascal/Delphi. Статьи, исходники, компоненты, справочники, мануалы, FaQ, программы.

Дружественные рассылки

Статьи по Visual C++
Статьи по ASP.NET
Delphi Coding
Интернет и Delphi

Замечания и предложения отправляйте на E-Mail указанный ниже. С уважением Ковязин Дмитрий (admin@p-lib.pp.ru).



Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.prog.visualbnet
Архив рассылки
Отписаться Вебом Почтой
Вспомнить пароль

В избранное