3/24/2008 3:47:56 PM

wpf_unleashed Сейчас читаю книжку по WPF, называется, соответственно, Windows Presentation Foundation Unleashed, автор Adam Nathan.

Преотличнейшая, надо сказать, книга. Очень качественно, структурно и толково изложен материал, нет никакой лишней "воды". Книга читается легко и интересно. Давно таких книг не читал, серьезно.

А кроме того, она выполнена на очень качественной бумаге и цветная! Последнее может показаться несущественным, но примеры XAML-кода, равно как и кода процедурного, в цветном варианте воспринимаются совершенно иначе, нежели в "стандартном" черно-белом варианте. О скриншотах и говорить не приходится.

Словом, всем, кто имеет желание познакомиться или углубить свои знания в области WPF, очень-очень рекоменду. Чтение форумов, статей в MSDN и примеров не дает такого эффекта и таких знаний, как прочтение этой книги, "проверено на людях" :)

2/27/2007 7:45:00 AM

23-го февраля, видимо в качестве праздничного подарка, был выпущен релиз Composite Application Block, который поддерживает WPF. Ура!

Пока создатели SmartClient Software Factory грозятся выпустить в конце апреля новую версию их продукта, которая будет содержать инструменты для добавления View, использующих WPF (и еще нескольких новых фич), CAB с поддержкой WPF можно скачать здесь: http://www.codeplex.com/wpfcab

Для работы с ним нужно:

  1. Создать "пустой" WPF-проект.
  2. Удалить Window1.xaml и выкинуть из файла App.xaml упоминания о нем.
  3. Добавить в заголовок App.xml следующее указание неймспейса:

    xmlns:cab="clr-namespace:Microsoft.Practices.CompositeUI.Windows.Workspaces;assembly=Microsoft.Practices.CompositeUI.Windows"

  4. Создать в нем класс-аппликейшн, например ShellApplication, который унаследовать от ApplicationShellApplication<MainWorkItem, App>. Здесь MainWorkItem - это "главный" воркайтем приложения, а App - это класс, который уже есть в Вашем проекте и описывается файлами App.xaml и App.xaml.cs
  5. Создать класс Program (имя может быть любым), в котором определить статический метод Main так, как это делается в "обычном" WinForms-приложении. Запустить в нем созданный в п.2 класс-аппликейшн:
    new ShellApplication().Run();
  6. Установить класс Program как стартовый класс в свойствах приложения.

Все, проект WPF CAB готов. Дальше все как обычно, кроме того, что вместо WinForms можно использовать WPF для создания View.

Кстати, если сейчас запустить приложение, то у него даже не будет окна. Для того, чтобы исправить этот "недостаток", нужно создать новую WPF-форму с именем, скажем, ShellWinfow.xaml и переопределить известный метод в ShellApplication:

protected override void AfterShellCreated()
{
   
base.AfterShellCreated();
   
ShellWindow mainWindow = RootWorkItem.Items.AddNew<ShellWindow>();
   
Shell.MainWindow = mainWindow;
    mainWindow.Show();
}

Ну и еще одна "фича". В тех элементах, где планируется использование воркспейсов (DeckWorkspace, TabWorkspace, etc), в заголовок можно добавить следующий атрибут: xmlns:cab="http://schemas.microsoft.com/cab/wpf
Это позволит потом определять воркспейсы в XAML-файле следующим образом:

<cab:DeckWorkspace x:Name="headerWorkspace"/>

В остальном работа с CAB не изменилась.

Более подробно можно посмотреть в примере (BankShell), который теперь тоже "переведен" на CAB WPF.

Tags: ,

1/9/2007 7:41:00 AM

Yahoo выпускает новую версию своего Yahoo Messenger, теперь для Windows Vista.

Messenger написан с использование Windows Presentation Foundation (WPF). В нем интегрированы такие возможности, как текстовое, голосовое и видео общение, красивый интерфейс (даже с табами), естественно, работа с галереями Flickr, новые трехмерные смайлики, новые возможности создания групп и листов...

Контакты Windows Live Messenger в Yahoo Messenger, конечно, поддерживаются, верно и обратное.

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

Эта штука имеет так же свой гаджет, который можно разместить на Vista Sidebar, на котором можно разместить контакты тех, кого хочется видеть постоянно вне зависимости от того, открыт ли Messenger или нет.

Посмотреть на то, как выглядит эта штука (там даже есть небольшой флеш-ролик, демонстрирующий работу) можно вот здесь:

http://messenger.yahoo.com/windowsvista.php;_ylt=Ah3Ac5.PcsMpo6rlpeGwe71wMMIF

Остается только пожелать пользователям Microsoft Live Messenger такого подарка :)

 

Technorati tags: , ,

 

Tags: ,

Powered by BlogEngine.NET 1.6.0.0

About the author

Alexey Raga Alexey Raga
.NET software developer.

E-mail me Send mail

Twitter


Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2010

Sign in