Класс Application можно рассматривать как "класс низшего уровня", позволяющий нам управлять поведением приложения Windows Forms. Кроме того, этот класс определяет набор событий уровня всего приложения, например закрытие приложения или простой центрального процессора.
Наиболее важные методы этого класса (все они являются статическими) перечислены в таблице 1.1.
Таблица 1.1. Наиболее важные методы типа Application | |
Метод класса | Назначение Application |
AddMessageFilter() | Эти методы позволяют приложению перехватывать сообщения RemoveMessageFilter() и выполнять с этими сообщениями необходимые предварительные действия. Для того чтобы добавить фильтр сообщений, необходимо указать класс, реализующий интерфейс IMessageFilter |
DoEvents() | Обеспечивает способность приложения обрабатывать сообщения из очереди сообщений во время выполнения какой-либо длительной операции. Можно сказать, что DoEvents() - это "быстрый и грязный" заменитель нормальной многопоточности |
Exit() | Завершает работу приложения |
ExitThred() | Прекращает обработку сообщений для текущего потока и закрывает все окна, владельцем которых является этот поток |
OLERequired() | Инициализирует библиотеки OLE. Можете считать этот метод эквивалентом.NET для вызываемого вручную метода Olelnitialize() |
Run() | Запускает стандартный цикл работы с сообщениями для текущего потока |
Класс Application определяет множество статических свойств (таблице 1.2), большинство из которых доступны только для чтения.
|
|
Таблица 1.2. Наиболее важные свойства типа Application | |
Свойство | Назначение |
CommonAppDataRegistry | Возвращает параметр системного реестра, который хранит общую для всех пользователей информацию о приложении |
CompanyName | Возвращает имя компании |
CurrentCulture | Позволяет задать или получить информацию о естественном языке, для работы с которым предназначен текущий поток |
CurrentlnputLanguage | Позволяет задать или получить информацию о естественном языке для ввода информации, получаемой текущим потоком |
ProductName | Для получения имени программного продукта, которое ассоциировано с данным приложением |
ProductVersion | Позволяет получить номер версии программного продукта |
StartupPath | Позволяет определить имя выполняемого файла для работающего приложения и путь к нему в операционной системе |
Многие из этих свойств предназначены для получения общей информации о приложении, такой как название компании, номер версии и т.п.
Таким образом, при помощи многих свойств (например, CompanyName или ProductName) можно очень просто получить метаданные уровня сборки. В сборке можно использовать любое количество встроенных и пользовательских атрибутов. В результате можно получить значение атрибута [assembly:AssemblyCompany(" ")] при помощи свойства Application.CompanyName без необходимости прибегать к использованию типов, определенных в пространстве имен System.Reflection.