Список основных изменений в .NET Compact Framework 2.0 приведен на странице msdn.microsoft.com/netframework/programming/netcf/default.aspx?pull=/library/en-us/dnnetcomp/html/whats_new_netcf2.asp. К основным улучшениям библиотеки .NET Compact Framework 2.0 относятся усовершенствованные возможности создания пользовательского интерфейса, новая мобильная база данных, существенные усовершенствования эмулятора, усиленная поддержка COM Interop и Managed Interfaces для D3D. Библиотека .NET Compact Framework 2.0 расширила существующую функциональность в .NET CF 1.0 новыми возможностями. Также разработчики добавили поддержку новых классов, которые ранее были доступны только в полной .NET Framework. В этой книге обязательно будут рассмотрены наиболее значительные новинки. А сейчас можно лишь упомянуть основные моменты.
Пакет .NET Compact Framework 2.0 в Visual Studio 2005 стал поддерживать новые элементы управления, позволяющие создавать очень сложные приложения без написания громоздкого кода. В частности, появилась поддержка элементов управления MonthCalendarи DateTimePicker, позволяющих создавать интерфейс календаря. Также появился новый элемент для уведомлений Notification. Кроме него разработчики получили доступ к элементам DocumentListи HardwareButton. Более подробно они будут рассматриваться в главе, посвященной элементам управления. Новое свойство ScreenOrientationпозволяет без использования неуправляемого кода вращать экран устройства. Кроме того, стало значительно проще создавать собственные элементы управления, как это делается в полной версии .NET Framework.
Элементы пользовательского интерфейса в .NET Compact Framework 2.0 теперь поддерживают присоединение (docking). При перемещении элемента управления к определенной стороне контейнера он всегда заполняет эту сторону контейнера.
Некоторые элементы управления стали поддерживать свойство AutoScaleMode. Свойство AutoScaleModeпоказывает, как нужно перерисовывать элемент при изменении разрешения экрана. Также формы стали поддерживать свойство AutoScroll.
Помимо этого класс Controlтеперь поддерживает методы SuspendLayoutи ResumeLayout. Также в .NET Compact Framework появилась полноценная поддержка буфера обмена.
Класс Graphicsтоже получил новые возможности, и теперь при помощи свойств DpiXи DpiYразработчик может узнать размеры экрана. Помимо этого сейчас можно отображать текст под различными углами при помощи класса LogFont. Также разработчик может создавать перья заданных цвета и размера.
Значительно улучшена работа с растровыми изображениями. Программисты получили новые возможности для создания изображений и сохранения их в файле или потоке. В приложениях стало проще манипулировать изображениями при помощи комбинации методов LockBitsи UnlockBitsв сочетании с новым классом BitmapData. Приложения, использующие при работе с изображениями неуправляемый код, теперь могут получать дескриптор объекта Bitmapчерез метод GetHbitmap.
Новые возможности позволяют разрабатывать приложения с использованием управляемого кода для Windows Mobile 5.0 при помощи классов из пространства имен Microsoft.Windows.DirectX. Поддержка DirectX позволяет писать игры с использованием управляемого кода, обеспечивая более быструю разработку приложений, чем при использовании неуправляемого DirectX.
Так как на рынке все чаще стали появляться устройства со встроенной клавиатурой, то в библиотеку .NET Compact Framework 2.0 была введена поддержка клавиатуры.
Также следует отметить, что элементы управления теперь распознают события KeyUp, KeyDownи KeyPress. Объект Formтеперь имеет свойство KeyPreview.
Тестировать программы тоже стало намного проще, так как эмулятор в .NET Compact Framework 2.0 подвергся значительной переработке. Перечень функциональных возможностей эмуляторов Pocket PC и смартфонов был расширен, что облегчает создание, проверку и развертывание приложений. Особое внимание было уделено поддержке сетевого взаимодействия. Кроме того, было улучшено быстродействие эмулятора. Появилась поддержка программы ActiveSync, можно работать с общими папками и использовать четыре COM-порта. Также эмулятор стал поддерживать работу с портретным и альбомным режимами отображения. Кроме того, эмулятор теперь эмулирует работу ARM-процессора.
Технология Smart Device CAB Project упростила развертывание мобильных приложений. Эта технология позволяет использовать в визуальном редакторе перемещение файлов, создавать папки и записи в реестре. Теперь создавать CAB-проект для установочного пакета так же просто, как при создании проекта Windows Installer для настольных компьютеров.
Читать дальше