Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > .NET 3.0: Windows Presentation Foundation


Автор: Exception 12.12.2006, 22:43
С чего должна начинаться любая статья? Правильно, со вступления. Что же, для начала, мне следует хотя бы кратко рассказать вам о предмете, о котором пойдёт речь. В данной статье я постараюсь описать свои ощущения, возникшие при ознакомлении с платформой WPF (Windows Presentation Foundation), входящей в состав недавно выпущенного .NET Framework 3.0 (ранее называвшегося WinFX). Эта платформа представляет собой замену уже ставшему для многих привычным Windows Forms 2.0, при этом привнося некоторые совершенно новые для многих разработчиков .NET концепции (конечно же, я говорю о XAML). WPF в первую очередь ориентирована на Windows Vista, но будет совершенно нормально работать и на Windows XP SP2, которым пользовался автор статьи.

Для начала работы с .NET 3.0 необходимо либо дождаться релиза следующей Visual Studio с таинственным кодовым именем Orcas, либо добавить поддержку версии 3.0 в текущую версию (речь идёт, безусловно, о VS 2005). Инструкции по загрузке и установке .NET 3.0 вкупе с расширениями для VS можно найти в конце статьи.

Примечание:
.NET 3.0 так называется исключительно, повторяю, исключительно из маркетинговых соображений. На самом деле это всё тот же .NET 2.0 Runtime и несколько новых библиотек - WPF (Windows Presentation Foundation), которую мы рассматриваем в этом обзоре, WCF (Windows Communication Foundation) и WWF (Windows Workflow Foundation). Среди программистов также популярна шутка, что Microsoft забыла выпустить библиотеку с наименованием WTF smile .


Итак, предположим, что установка прошла спокойно, и вы нажали на кнопку "Finish". Кстати, я не зря использовал слово "предположим" применительно к успешному концу установки: для вящего эффекта после установки инсталлятор радостно выкинул BSoD, чем поверг меня в уныние. В прочем, потом он присмирел и таки дал мне спокойно начать работать играться с новой библиотекой.

Теперь, когда все дебри установки остались позади, мы должны запустить Visual Studio и создать новый проект. Насколько я знаю, никаких проблем с обратной совместимостью нет, так что можно будет безбоязненно работать и со старыми проектами из той же студии. Для создания нового проекта с использованием WPF необходимо выбрать шаблон "Windows Application (WPF)", появившийся с установкой расширений.

Первое, что мы замечаем - это изменения в дизайнере: теперь он разделён на две части, в которых располагаются, соответственно, дизайнер и редактор кода. Но самое сокрушительное изменение обнаруживается при взгляде на Solution Explorer: код формы теперь хранится в файле с расширением *.xaml. Что же, теперь на XML кодить будем? Не совсем. Потому что файл с именем TestWindow.cs тоже присутствует. Наберите в лёгкие воздуха и задержите дыхание... На XAML (диалект XML, разработанный Microsoft) пишется только код пользовательского интерфейса. Медленно выдохните. Вы поняли меня? Нет? Тогда читайте дальше.

user posted image
Новый дизайнер.

user posted image
Файлы XAML.

Примечание:
XAML произносится не "ксамл" и даже не "икс эй эм эль". Правильное произношение - "замл".


Попробуем разобраться в новшествах WPF, для чего нам придётся немного пройтись по базовым знаниям архитектуры Windows Forms. Раньше, чтобы добавить на форму текстовое поле, нужно было описать поле типа TextBox в классе формы, инициализировать его и добавить в коллекцию компонентов (то есть, конечно, за нас эту работу выполнял дизайнер, но сути оно не меняет).

WPF предлагает записывать интерфейс в XML, то есть простая форма с текстовым полем описывается примерно так:

TestWindow.xaml
Код
<Window x:Class="WPFTest.TestWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Заголовок окна" Height="300" Width="300"
    >
  <Grid>
    <TextBox Margin="0,0,0,0" Height="30" Width="200" Name="myTextBox" />
  </Grid>
</Window>


TestWindow.xaml.cs

Код
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;


namespace WPFTest
{
    /// <summary>
    /// Interaction logic for TestWindow.xaml
    /// </summary>

    public partial class TestWindow : System.Windows.Window
    {

        public TestWindow()
        {
            InitializeComponent();
        }

    }
}


Не нужно быть гением, чтобы догадаться, что корневой элемент - Window - представляет собой окно. Он содержит по одному атрибуту на каждое свойство класса System.Windows.Window, в чём-то неуловимо похожего на System.Windows.Forms.Form smile . Разумеется, вовсе не обязательно указывать для каждого из них своё значение, так как в большинстве случаев нас вполне устраивают значения атрибутов-свойств по умолчанию. Следующий по "вложенности" элемент - это "сетка" (Grid). Её не было в Windows Forms, так что позже мы рассмотрим её более внимательно. Пока что достаточно лишь знать, что это - контейнер для всех элементов формы. Ну и, соответственно, элемент TextBox так текстовым полем и остаётся, несмотря на свою вопиющую декларативность smile .

Весь код логики пишется именно в файле *.cs, причём до "настоящего" класса, содержащего реализацию метода InitializeComponent(), теперь не так-то просто достучаться, поскольку его не видно даже по нажатии в Solution Explorer кнопки "Show All Files". Файл из *.designer.cs прератился в *.g.cs и, этот partial-класс выглядит так:

TestForm.g.cs
Код
/// <summary>
/// TestWindow
/// </summary>
public partial class TestWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
    
    internal System.Windows.Controls.TextBox myTextBox;
    
    private bool _contentLoaded;
    
    /// <summary>
    /// InitializeComponent
    /// </summary>
    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    public void InitializeComponent() {
        if (_contentLoaded) {
            return;
        }
        _contentLoaded = true;
        System.Uri resourceLocater = new System.Uri("/WPFTest;component/testwindow.xaml", System.UriKind.Relative);
        System.Windows.Application.LoadComponent(this, resourceLocater);
    }
    
    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
    [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
    void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
        switch (connectionId)
        {
        case 1:
        this.myTextBox = ((System.Windows.Controls.TextBox)(target));
        return;
        }
        this._contentLoaded = true;
    }
}


Примечание: интересно, а я один заметил, что имя переменной resourceLocater в методе Connect() написано с ошибкой smile ?

Как видно, во время выполнения библиотека WPF в лице класса System.Windows.Application извлекает XAML-файлы из ресурсов приложения и "на ходу" создаёт форму. В чём плюсы такого подхода? На самом деле, идея декларативного языка для описания UI ни в коем случае не является новой. Сейчас получил большое распространение диалект XML "XUL" (зул), используемый в качестве основы для написания UI таких приложений, как Mozilla Firefox и Mozilla Thunderbird. Также существует аналог XAML c открытым исходным кодом, который называется MyXaml. На самом деле, в моём понимании ни тот, ни другой ни в коем случае не являются аналогом XAML из-за гораздо более скудного набора возможностей.

Каковы плюсы подобного подхода? Позвольте мне перечислить самые, на мой взгляд, очевидные:
  •  Переносимость. Вообще, стандарт XML задумывался как независимый от анализатора язык для структуризации информации. Разумеется, XAML не может сохранить независимость от своего "интерпретатора", поскольку на данный момент существует лишь одна полная его реализация - WPF, но, тем не менее, переносимость в нём присутствует в куда большем объёме чем у простого кода, сгенерированного дизайнером: код GUI одинаков для разных языков программирования, а это очень важно.
  •  Простота. Согласитесь, код в формате XML легко читается человеком и компактно умещается на экране, в то время, как при задании всех свойств и создании объектов "вручную" взаимосвязанные куски кода оказываются разбросанными по разным частям файла, что не сказывается хорошо на удобстве его редактирования. "А какая мне разница, всё равно ведь код генерирует дизайнер?" - спросите вы и будете совершенно правы. Что же, по крайней мере, дизайнер скажет вам спасибо, поскольку разбор XML является делом куда более лёгким, нежели разбор кода на императивном языке программирования. А если однажды у вас не окажется под рукой дизайнера, вы его прекрасно поймёте.
  •  Разделение логики и представления. Появление XAML попросту сводит на нет проблему смешанного кода логики и представления хотя бы потому, что кода представления как такового нет. Конечно, это вовсе не отменяет необходимость использования паттернов вроде MVP, но всё-таки мы становимся чуть ближе к дзену разработчика ПО.
Несомненно, у XAML есть также и очень серьёзная проблема, суть производительность. Загрузка интерфейса пользователя происходит очень, ну просто непозволительно и неприлично долго. Заставлять пользователя ждать 15 секунд для загрузки простейшей формы с текстовым полем - непозволительная роскошь для разработчика. Честно говоря, я слегка не понял, что мелкомягкие хотели нам сказать этим манёвром - складывается отчётливое ощущение, что на Vista всё это работает куда быстрее (если я не ошибаюсь, все появившиеся "навороты" стандартных контролов и их новая внешность напрямую поддерживаются её API), и подобная "медлительность" работы WPF на WinXP в их понимании должна подействовать как нервный импульс в коре головного мозга - "скорее покупай Windows Vista!". К счастью иль сожалению, заказчикам мы такой ультиматум выдвинуть не можем. Как бы то ни было, технологию "пощупать" имеет смысл.

user posted image
Формочка.

Как вы, вероятнее всего, уже догадались, это была вводная часть в обзор WPF, который я планирую писать в соответствии с моим собственным продвижением в познании этой платформы. Adios smile !

Автор: mr.DUDA 12.12.2006, 23:02
Цитата(Exception @  12.12.2006,  21:43 Найти цитируемый пост)
Загрузка интерфейса пользователя происходит очень, ну просто непозволительно и неприлично долго. Заставлять пользователя ждать 15 секунд для загрузки простейшей формы с текстовым полем - непозволительная роскошь для разработчика. Честно говоря, я слегка не понял, что мелкомягкие хотели нам сказать этим манёвром - складывается отчётливое ощущение, что на Vista всё это работает куда быстрее

Скорее всего, долго загружаются многочисленные библиотеки smile. Хорошо бы их прекомпилить, вот тогда не будет пресловутых 15-ти секунд, AFAIK.

P.S. Exception, ты пиши статью (не бросай как Nemerle), а я её закреплю и возможно со временем буду дополнять сам. Даёшь русскоязычный FAQ по XAML !  smile 

Автор: Exception 12.12.2006, 23:17
Про WPF с лёгкой руки пишется (вероятно, сказывается то, что не приходится переводить -  мысли сами быстрее лезут в голову smile ). Ну и feedback, конечно, больший ожидается.

Добавлено @ 23:18 
Цитата(mr.DUDA @  13.12.2006,  00:02 Найти цитируемый пост)
Хорошо бы их прекомпилить


Кстати, отличная мысль. Ибо, как я заметил, "непривычные" для XP штучки тормозят именно первые секунды их использования - эх, JIT.. smile

Добавлено @ 23:24 
Ой да - сразу напишу инструкции по установке.

Инструкции по установке .NET 3.0 и расширений для разработки приложений под него

Сперва мы должны скачать http://www.microsoft.com/downloads/details.aspx?FamilyId=10CC340B-F857-4A14-83F5-25634C3BF043&displaylang=en. Сам он весит немного, только вот инсталлятор потом ещё качает 39 MB из интернета, так что, если у вас узкий канал, не тратьте зря время и нервы.

После установки следует скачать и установить http://www.microsoft.com/downloads/details.aspx?FamilyId=F54F5537-CC86-4BF5-AE44-F5A1E805680D&displaylang=en. Ссылка ведёт на November CTP, так что, если скачаете не самую свежую версию, не обессудьте. Но пока что она самая новая.

Вот, в принципе, и всё.

Автор: Softaz 12.12.2006, 23:44
Цитата

Сперва мы должны скачать .NET 3.0 Redistributable Packgage. Сам он весит немного, только вот инсталлятор потом ещё качает 39 MB из интернета, так что, если у вас узкий канал, не тратьте зря время и нервы.


Вот "полный" .NET 3.0 http://download.microsoft.com/download/3/F/0/3F0A922C-F239-4B9B-9CB0-DF53621C57D9/dotnetfx3.exe (50,4 МБ)

Загрузка формочки заняла 5 с.
Только вот как быть с тем же TextBox... (см. рис. U3) не все же знают англицкий. Это теперь надо каждый переводить smile 

Автор: Softaz 12.12.2006, 23:51
Либо я либо форум глючат.
Не возможно добавить еще один файл в сообщение.
Вот тот рисунок.

Добавлено @ 23:53 
Из рисунка видно, что контекстное меню на английском.
Смена культуры ничего не дала. И где пункты "Отменить" и "Удалить"?
Конечно, можно сделать свои, но все же smile 

Автор: mr.DUDA 13.12.2006, 10:29
Softaz, Thread.CurrentThread.CurrentUICulture часом не английская ?

Автор: ivashkanet 13.12.2006, 10:34
Exception, молодец. Так держать. Первооткрыватель ты наш  smile 

 smile 
Цитата(Exception @  12.12.2006,  21:43 Найти цитируемый пост)
А если однажды у вас не окажется под рукой дизайнера, вы его прекрасно поймёте.

Прекрасно понимаю smile
За неимением лицензии на DevExpress на ноуте, пришлось в командировке лазить по коду дизайнера. Ну и кака, я вам скажу.

Автор: mr.DUDA 13.12.2006, 14:35
Поставил .NET 3.0 SDK и VS Extensions под висту. Кстати, первый почему-то называется "Windows SDK"  smile. Начал разбираться.

Первое впечатление от знакомства с документацией и примерами: "они всё изменили !!!"  smile. Ну например, где вкладка "Events" в окне свойств ? В общем, буду учить матчасть, курить маны и листать гигабайты обновлённого мсдн...

Автор: mr.DUDA 13.12.2006, 15:51
Что-то слишком всё хардкорно: дизайнер не доделан, xaml приходится редактировать вручную, на события подписываться - тоже вручную, толкового описания возможностей контролов нигде нету...  smile 

Автор: Softaz 13.12.2006, 17:02
Цитата(mr.DUDA @  13.12.2006,  10:29 Найти цитируемый пост)
 Thread.CurrentThread.CurrentUICulture часом не английская


Я ж написал, что
Цитата(Softaz @  12.12.2006,  23:51 Найти цитируемый пост)
Смена культуры ничего не дала

менял на русскую (ru-ru). Ничего не дало smile


Автор: Void 13.12.2006, 18:12
Softaz, возможно, поможет русский language pack для рантайма (он ещё не вышел?).

Автор: Softaz 13.12.2006, 20:05
Цитата(Void @  13.12.2006,  18:12 Найти цитируемый пост)
возможно, поможет русский language pack для рантайма (он ещё не вышел?)

Дело не в языковом пакете, а в том, что раньше (везде) кинешь на форму текст бокс, скажем, - а минимальное контекстное меню уже есть, причем "на языке системы", поскольку все это выполнялось через WinApi. В NET2.0 еще было (конечно, система там другая).
А здесь (в 3.0) даже на текст бокс приходится вешать свое меню, да еще писать тексты в локальные ресурсы, если приложение мультиязыковое.

P.S.: Помню, когда тольок вышли FW, многие возникали по поводу большого размера в 20 МБ. Сейчас уже 50 МБ. Пока тихо. Скоро начнется...

Автор: Void 13.12.2006, 20:13
Цитата(Softaz @  13.12.2006,  22:05 Найти цитируемый пост)
Сейчас уже 50 МБ. Пока тихо. Скоро начнется

В Висте .NET 3.0 предустановлен. На многие компьютеры .NET попадёт с Windows Update. А проблемы наших диалапщиков MS не тревожат.
Цитата(Softaz @  13.12.2006,  22:05 Найти цитируемый пост)
А здесь (в 3.0) даже на текст бокс приходится вешать свое меню, да еще писать тексты в локальные ресурсы, если приложение мультиязыковое.

Не совсем понял. В 2.0 придётся делать то же самое, если требуется поддержка каких-то языков, кроме английского и языка локализации Windows. Поскольку 3.0 почти не использует WinAPI, вместо последнего (по идее) накатывается langpack.

Автор: Exception 13.12.2006, 20:21
Цитата(Softaz @  12.12.2006,  23:44 Найти цитируемый пост)

Загрузка формочки заняла 5 с.


О, тогда замечательно.

Softaz, ты просто скачал английский .NET Runtime. А я - русский smile .

Добавлено @ 20:22 
Постой. Так ты же на Висте пробуешь. А я - на XP. Виста у тебя английская, видимо, по крайней мере, .NET в неё встроен английский smile .

Автор: Gelis 13.12.2006, 20:25
Цитата

Что-то слишком всё хардкорно: дизайнер не доделан, xaml приходится редактировать вручную, на события подписываться - тоже вручную, толкового описания возможностей контролов нигде нету... 

А дизайнер внутри студии и не доделают. Был на семинаре "Дни разработчика Microsoft" и медленно похрапывал под рассказы мужика с Мелкософта о WPF. Так вот что понял сквозь сон:
1. В Vista вся графика будет векторная, т.е. даже иконки будут векторными.
2. В Visual Studio будет какой-то дико урезанный дизайнер форм. Полный дизайнер будет выпускаться отдельным продуктом и это будет графическое ПО уровня Adobe Illustrator или Corel. В этом дизайнере будет генерится XAML код который затем можно будет экспортировать в VS. В VS этот XAML-код можно будет перегнать в C#. Почему так сделано. Ну по-моему мнению Мелкософт хочет еще хапнуть денег продавая буржуям отдельно дизайнер форм. По-ихнему: предполагается что над любым проектом будут работать хотя бы два человека:1. Дизайнер - рысавать векторные элементы управления, формачки, иконки и т.п.  2. Программист, который не будет отвечать за интерфейс, а лишь за бизнес логику. Т.е. типа чтобы не заставлять программиста работать с графикой, а дизайнера с кодом типа выпускать будут два разных продукта. 
3. Дизайнер форм уже типа готов, нам типа даже его показывали, но где скачать какую-нить бету так и несказали
4. У элемента управления нет своего изначально заданного графического интерфейса и мы можем его задать произвольным. Т.е. не прыдется делать свои компоненты типа круглой кнопочки.
Ладно пойду попью пива, завтра еще че-нить интересного вспомню напишу.

Автор: Exception 13.12.2006, 20:33
Цитата(Gelis @  13.12.2006,  21:25 Найти цитируемый пост)
1. В Vista вся графика будет векторная, т.е. даже иконки будут векторными.


Угу. И они готовят конкурент CorelDraw по имени http://www.microsoft.com/products/expression/en/expression-design/default.mspx для создания векторной графики.

Цитата(Gelis @  13.12.2006,  21:25 Найти цитируемый пост)
Полный дизайнер будет выпускаться отдельным продуктом и это будет графическое ПО уровня Adobe Illustrator или Corel. В этом дизайнере будет генерится XAML код который затем можно будет экспортировать в VS.


http://www.microsoft.com/products/expression/en/Expression-Blend/default.mspx

Он уже триальный.


Цитата(Gelis @  13.12.2006,  21:25 Найти цитируемый пост)
В VS этот XAML-код можно будет перегнать в C#.

Бред, ибо XAML не имеет смысла во что-то перегонять smile .


Цитата(Gelis @  13.12.2006,  21:25 Найти цитируемый пост)
У элемента управления нет своего изначально заданного графического интерфейса и мы можем его задать произвольным. Т.е. не прыдется делать свои компоненты типа круглой кнопочки.

Изначальный-то есть, только его элементарно изменять тем же XAML'ом. В XUL это мудро сделано через оверлеи, и здесь реализовано нечто похожее.

Автор: Gelis 14.12.2006, 11:49
Цитата(Exception @  13.12.2006,  20:33 Найти цитируемый пост)

Бред, ибо XAML не имеет смысла во что-то перегонять.

Смысла может и не имеет, но можно. Будет утилитка которая для особых извращенцев сможет весь XAML перегнать в C#.

Автор: Laprado 14.12.2006, 13:54
Gelis,  Как совместить несовместимое? C# - язык программирования, XAML - разметка контролов. 

Автор: Exception 14.12.2006, 17:26
Ну, если это действительно так, по-видимому, она позволит "из кода" создавать контролы (как это и делалось в VS 2005). Только зачем smile ?

P.S. Скачал Blend (дизайнер новый). Установил через nasty hack с убийством процесса установки, ибо в последний момент почему-то он делал rollback. Завтра, возможно, отпишусь smile .

Автор: mr.DUDA 14.12.2006, 23:53
Exception, напиши, легче ли с ним разрабатывать GUI. Что-то студийные средства очень уж напоминают "продвинутый блокнот для HTML"  smile 

Автор: nikitao 15.12.2006, 00:13
Вот вот. Согласен. smile 

 Данила давал мне ролики посмотреть smile  ( там же моно и блендер скачать )

Exception (18:54:15 14/12/2006)
http://www.microsoft.com/products/expression/en/Expression-Blend/default.mspx

Сам если честно так и не посмотрел smile  в силу проблем скорости. 

А вообще сложности не есть гуд smile 

Автор: Exception 16.12.2006, 00:26
Что же, я поставил Blend. Весьма, скажу вам, весьма.

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

Интерфейс программы выглядит выпендристически, что вполне соответствует новым веяниям Microsoft:

user posted image

user posted image

user posted image

В то время, как, работая в Visual Studio, мы фокусируемся на коде, Blend даже не знает о существовании такового. Зато он знает, что такое градиент:

user posted image

Кнопочки не только выглядят по-вистово, но и вращаются. А с помощью XAML можно и полностью переопределить их внешний вид (сплошная векторная графика, кстати).

user posted image

Поскольку сам я пока не успел разобраться со всем этим добром, даю ещё несколько скриншотов на затравку (из щедро предоставленных Microsoft примеров):

user posted image

Прошу обратить внимание на "Event Triggers": вместо написания кода, мы "ловим" события дизайнером и выполняем некоторые действия из предопределённого набора. Например, при загрузке формы можно заставить "перевернуться" грид вокруг себя. Для красоты. Ничего не напоминает? Совершенно верно, вылитый PowerPoint.

user posted image

Мы можем даже записать "эффекты" в реальном времени. Напоминает макросы.

Результат:

user posted image

P.S. Естественно, это не продолжение обзора, а "просто посмотреть" smile .

Автор: nikitao 16.12.2006, 00:35
А " ХРЕН " то не обрезал  smile  Вообще помню, что у тебя на компе.....  smile 


Ну тут имхо и по скриншотам видно, что формами программисты в скором будущем перестанут заниматься smile  Хорошо это или плохо..... ну вобщем станет красиво smile 

Автор: Exception 16.12.2006, 00:37
В общем, по-видимому, вскоре рисовать формы и правда будут дизайнеры.. smile

Автор: Mad 16.12.2006, 01:15
Цитата(Exception @  12.12.2006,  21:43 Найти цитируемый пост)
 Загрузка интерфейса пользователя происходит очень, ну просто непозволительно и неприлично долго. Заставлять пользователя ждать 15 секунд для загрузки простейшей формы с текстовым полем

Под Вистой все довольно бысьренько работает, видемо там и так куча нужных либов уже в памяти сидят smile

Цитата(Gelis @  13.12.2006,  19:25 Найти цитируемый пост)
1. В Vista вся графика будет векторная, т.е. даже иконки будут векторными.

Скорей уже 3D smile просто в том-же XAML 3D визуальные элементы определить гораздо проще чем векторные. И на удивление наличие 3D real-time елементов на форме, практически не влияет на время загрузки, и скорость работы приложения. Я уже не говорю, что их можно прямо на Desctop лепить smile

Добавлено @ 01:17 
Exception, Скинь линк на Blend pls.

Автор: nikitao 16.12.2006, 01:46
Цитата

Exception, Скинь линк на Blend pls.

Mad, 5 постами выше smile 

Автор: Mad 16.12.2006, 03:31
nikitao, Ты хоть както бы пщметил на что эта ссылка, а там реч о какихто роликах smile

Автор: mr.DUDA 16.12.2006, 14:18
Поставил себе этот Blend, приятно удивил небольшой размер download-а. Всего каких-то 11 мегабайт. Так как проверял под вистой, больше ничего скачивать и ставить не потребовалось, студию в том числе. Некоторые впечатления:

- По стилю, сам blender сильно напоминает Adobe Lightroom (такой же ультра-чёрный "графитовый" интерфейс), смешанный с Macromedia Flash и Photoshop;
- По удобству работы с дизайнером похоже на фотошоп или тот же Flash; слева вертикальный тулбар с основными командами а-ля фотошоп, справа - контрол с настройками и прочим, который можно скроллировать и раскрывать/закрывать отдельные категории;
- Всё настраивается визуально, но код XAML также можно редактировать руками. Только нужно ли, если есть такой мегадизайнер?
- Проекты создаются и сохраняются в том же виде и с теми же типами файлов, как это делает студия 2005, причём как уже говорил, наличие студии необязательно;
- В примерах активно демонстрируются доступные визуальные фишки: эффекты и анимация. Например, контролы "стоят на стеклянной поверхности", по которой двигается "луч света" - полупрозрачный эллипс на самом деле, но выглядит прикольно, как 3D. Анимация типа поворота всего контрола (вместе с кнопками, Label-ами, и остальным) уже не удивляет, т.к. подобное и в флеше есть; но работает шустро и плавно. Не зря WPF юзает видеокарту по полной программе;
- Самих примеров вроде штук 8, один очень простой, остальные демонстрируют ту или иную фичу. Два примера посвящены клавиатуре и мыши. Есть пример Hyperbar, похожий на тулбар из MacOS: кнопки "зумятся" при наведении мышкой, и ездят по тулбару, а внизу - полупрозрачное отражение всего тулбара;
- В бета версии есть User Guide, по которому наверно можно научиться всему, что нужно знать для дизайна;
- Нигде не нашёл контрол Viewport3D, на основном тулбаре есть похожая кнопа, но она всегда заблокирована. Похоже, настоящее 3D оставляют для релизной версии. Судя по хелпу, для трёхмерных контролов/сцен понадобится импортировать модели в мелкомягкий формат .obj, материалы - в .mtl, картинки (текстуры) просто добавляются в проект;

Кстати, походу Microsoft не сама эту прогу делала, а перекупила у компании http://www.iview-multimedia.com/, похоже вместе с самой компанией. Между прочим, в их софте есть версии под MacOS. Для блендера наличие поддержки маков очень сомнительно, ИМХО.

Автор: ivashkanet 16.12.2006, 14:50
Цитата(Exception @  15.12.2006,  23:26 Найти цитируемый пост)
Что же, я поставил Blend. Весьма, скажу вам, весьма.

Я ф шоке  smile 
Не ожидал, что будет такой качественный скачек  smile 

Вот мне интересно, есть ли в другой технологии (та же Java) похожие дизайнеры и эффекты?

Или на этот раз MS ни у кого ничего не тырила  smile 
Цитата(Exception @  15.12.2006,  23:37 Найти цитируемый пост)
В общем, по-видимому, вскоре рисовать формы и правда будут дизайнеры.. 

Точно. Зато какой простор для креатива  smile 

Автор: mr.DUDA 16.12.2006, 14:58
Цитата(ivashkanet @  16.12.2006,  13:50 Найти цитируемый пост)
Вот мне интересно, есть ли в другой технологии (та же Java) похожие дизайнеры и эффекты?Или на этот раз MS ни у кого ничего не тырила

Читай мой пост:

Цитата(mr.DUDA @  16.12.2006,  13:18 Найти цитируемый пост)
Microsoft не сама эту прогу делала, а перекупила у компании iView, похоже вместе с самой компанией.


Автор: nikitao 16.12.2006, 16:40
Скачек действительно на две головы smile . Хотя если честно такая красота самого Блендера немного отвлекает. Наверное это с непривычки smile . 

Думаю такое же чудо от конкурентов минимум год ждать надо smile  ( пока там все скопошаться и начнут репу чесать )  smile  


ЗЫ  Долго тупил, ибо не создавались события - открывалась студия, а в блендере ошибка вылетала smile 

Автор: ivashkanet 16.12.2006, 18:31
Цитата(nikitao @  16.12.2006,  15:40 Найти цитируемый пост)
Думаю такое же чудо от конкурентов минимум год ждать надо

Я тут подумал, и понял, что для того, чтобы появились такие средства разработки у конкурентов необходима поддержка соответствующих контролов в операционной системе.
А на данный момент только МS замахнулась на 3D акселирацию в самой оси.
Думаю конкуренты будут еще долго отставать  smile 

Автор: Exception 16.12.2006, 19:27
Цитата(ivashkanet @  16.12.2006,  15:50 Найти цитируемый пост)
Вот мне интересно, есть ли в другой технологии (та же Java) похожие дизайнеры и эффекты?

Или на этот раз MS ни у кого ничего не тырила 


Ну чем-то идея такого мощного GUI похожа на то, что предлагает Flex.

Автор: Xenon 17.12.2006, 02:52
А вообще координально все изменилось? Я просто пока только начал C# ковырять ... Будет ли сложно переходить на NET 3.0? Сильно идеология изменилась?

Автор: mr.DUDA 17.12.2006, 11:07
Цитата(Xenon @  17.12.2006,  01:52 Найти цитируемый пост)
А вообще координально все изменилось? Я просто пока только начал C# ковырять ... Будет ли сложно переходить на NET 3.0? Сильно идеология изменилась?

В .NET 3.0 язык C# и все фичи из 2.0 остались без изменений smile
Но WPF в сравнении с WinForms - "как бы похоже, но совсем всё по-другому". Всё векторное, всё вкладывается одно в другое, плюс абсолютно новые фичи типа анимации с timeline, декларативно описываемых эффектов, привязок между свойствами, etc. ИМХО стоит задуматься, изучать ли вообще WinForm-ы, и насколько глубоко. Пока что формы актуальны, и продлится это как минимум пару лет, пока Vista не вытеснит XP и предыдущие ОСи. Потом формы будут считаться таким же анахронизмом, как MFC.

Автор: nikitao 17.12.2006, 13:51
:-D 

Еще на VB 6 пишут , а мы уже WinForms хороним smile 

Автор: DarkDragon 17.12.2006, 15:08
Насчет векторной графики и этого Blender'a:
Билл Гейтс свинтел на 100% Видимо нагрузка большая.
В последние время он наверно ходит вот с таким лицом:  smile 

А вообще надо бы пойти на курсы Photoshop'a или CorelDraw'ера.
А знания 3D's Max'a не преветствуются?

Автор: Laprado 17.12.2006, 15:20
Цитата(nikitao @ 17.12.2006,  13:51)
:-D 

Еще на VB 6 пишут , а мы уже WinForms хороним smile

Мы впереди планеты всей будем smile

Автор: mr.DUDA 17.12.2006, 16:39
Цитата(DarkDragon @  17.12.2006,  14:08 Найти цитируемый пост)
Билл Гейтс свинтел на 100% Видимо нагрузка большая.

Не понял, что значит "свинтел"... Можно поподробнее ?

Цитата(DarkDragon @  17.12.2006,  14:08 Найти цитируемый пост)
А вообще надо бы пойти на курсы Photoshop'a или CorelDraw'ера.
А знания 3D's Max'a не преветствуются?

Ээх, программеры... У нас хлеб отнимут дизайнеры, которым и на курсы ходить не надо.
 smile 

Автор: Xenon 17.12.2006, 17:42
mr.DUDA, ну просто судя по статье поменялось нехило все smile И понятно, когда человек уже в С# неплохо соображает, то адаптироваться ему несложно, а вот новичку в этом языке ... smile

Автор: ivashkanet 17.12.2006, 19:36
Цитата(Xenon @  17.12.2006,  16:42 Найти цитируемый пост)
ну просто судя по статье поменялось нехило все

В том то и дело, что судя по статье поменялся только WinForms? а сама начинка нет.
Именно поэтому мы с тобой в одинаковых условиях.

Автор: DarkDragon 17.12.2006, 19:57
Цитата(mr.DUDA @  17.12.2006,  16:39 Найти цитируемый пост)
понял, что значит "свинтел"... Можно поподробнее ?

Ну эт значить крышак тронулся, или задымел, а можно и еще проще высказать сума выжил smile 

Цитата(mr.DUDA @  17.12.2006,  16:39 Найти цитируемый пост)
Ээх, программеры... У нас хлеб отнимут дизайнеры, которым и на курсы ходить не надо.

Ага, скоро на работе(программистов) партнеров(дизайнеров) давать будут smile 

Ну а вообще, надо будет немного потренероваться на Blend'ere, и потом показать дизайнерам, на что способен программист  smile 

Цитата(Xenon @  17.12.2006,  17:42 Найти цитируемый пост)
судя по статье поменялось нехило все 

Основные изменения затронули System.Windows.Forms, ну и все подлижащие ему компоненты (визуал естественно), ну а языки так и остались языками, вот только теперь каждому программисту (VB.NET, C#, Java, ...) придется еще и на xaml дизайнить.

Автор: Void 17.12.2006, 20:00
System.Windows.Forms никто не трогал. WPF пришёл на замену. Его классы в основном располагаются в System.Windows.

Автор: Exception 17.12.2006, 20:17
Цитата(DarkDragon @  17.12.2006,  20:57 Найти цитируемый пост)
вот только теперь каждому программисту (VB.NET, C#, Java, ...) придется еще и на xaml дизайнить.


Если я правильно всё понял, Microsoft планирует выделить дизайн UI в отдельную профессию, и я считаю это решение верным. Вон у web-разработчиков давно так.

Автор: DarkDragon 17.12.2006, 20:55
Цитата(Void @  17.12.2006,  20:00 Найти цитируемый пост)
System.Windows.Forms никто не трогал. WPF пришёл на замену. Его классы в основном располагаются в System.Windows. 

Ну у меня пока еще нет Framework 3.0. И я так подумал, раз изменения пошли в сторону Forms, Controls, естественно вспоминается System.Windows.Forms.

Цитата(Exception @  17.12.2006,  20:17 Найти цитируемый пост)
Если я правильно всё понял, Microsoft планирует выделить дизайн UI в отдельную профессию, и я считаю это решение верным. Вон у web-разработчиков давно так. 

Ну тогда это надо было уже давно делать. Игры когда начили делать то? У них отдельно програмист, аниматор, художник, звукорежиссер, и т. д.

Автор: Exception 17.12.2006, 22:33
Цитата(DarkDragon @  17.12.2006,  21:55 Найти цитируемый пост)
Ну у меня пока еще нет Framework 3.0. И я так подумал, раз изменения пошли в сторону Forms, Controls, естественно вспоминается System.Windows.Forms.


Нет, всё на месте. Я всегда думал - почему System.Windows пусто? Теперь оно полно классов smile .

Автор: Xenon 17.12.2006, 23:50
А зачем мне знать XML если визард все будет делать за меня? Я так понимаю, что теперь просто разделили код контролов и иницилизацию атрибутов (размер, высота, позиция) ... Чем-то на MFC похоже по-мойму smile 

Автор: nikitao 18.12.2006, 00:52
Действительно зачем надо было знать что там делал VB 6 8 лет назад. smile 

Автор: Exception 18.12.2006, 02:04
Цитата(Xenon @  18.12.2006,  00:50 Найти цитируемый пост)
А зачем мне знать XML если визард все будет делать за меня?


Во-первых, XAML smile .
Во-вторых, дизайнер, повторю, платный. В прочем, кого это волнует в России smile ?


Цитата(Xenon @  18.12.2006,  00:50 Найти цитируемый пост)
Я так понимаю, что теперь просто разделили код контролов и иницилизацию атрибутов (размер, высота, позиция) ...


Что за понятие - "код контролов"? Разделили презентацию и логику (прямо как в ASP .NET).

Автор: mr.DUDA 18.12.2006, 11:19
Цитата(Exception @  17.12.2006,  19:17 Найти цитируемый пост)
Если я правильно всё понял, Microsoft планирует выделить дизайн UI в отдельную профессию, и я считаю это решение верным. Вон у web-разработчиков давно так.

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

Добавлено @ 11:24 
Цитата(Xenon @  17.12.2006,  22:50 Найти цитируемый пост)
Я так понимаю, что теперь просто разделили код контролов и иницилизацию атрибутов (размер, высота, позиция)

Такого понятия как контрол теперь вообще не существует. Есть дерево визуальных элементов, примитивы, эффекты, анимация, стили.

Автор: Void 18.12.2006, 16:15
Цитата(mr.DUDA @  18.12.2006,  13:19 Найти цитируемый пост)
Рискуя удариться в флейм, отвечу что это не совсем верный подход, имхо. В реальной жизни интерфейс чаще проектируется именно программером, а "доводится" уже потом, дизайнером.

осторожно обходя флейм Верно с точки зрения… какой? Быстрой и дешёвой разработки или удовлетворения пользователя? К сожалению, ни программисты, ни дизайнеры зачастую никак не заботятся о такой страшной вещи как юзабилити.

Автор: Exception 18.12.2006, 16:54
Стараясь не думать о флейме белой обезьяне В данном случае, по-видимому, дизайнеры объединятся с экспертами по практичности aka usability ПО.

Автор: Gelis 18.12.2006, 17:06
Цитата(Void @  18.12.2006,  16:15 Найти цитируемый пост)
 К сожалению, ни программисты, ни дизайнеры зачастую никак не заботятся о такой страшной вещи как юзабилити.

Тоже заранее извиняюсь за флейм. Я тоже себе представляю, как будет объячнить пользователю, что вот этот ёжик бегающий по экрану это просто прикольная кнопка. Когда-то Microsoft утверждала, что успех ее ОС во многом связан с тем, что у нее простой и интуитивно-понятный GUI. WPF дает нам много средств для разработки красивого GUI, но в нем нет старого единообразия. Допустим в меню и комбобоксы можно напихать что угодно картинки пасьянсы и т.п. Можно поворачивать Textedit-ы, что бы пользователь не ленился, а поворачивал свой монитор или голову на 45 градусов, где это он там допустил ошибочку.

Автор: mr.DUDA 18.12.2006, 19:40

 ! 
mr.DUDA
Товарищи ! Прекратите флеймить !!!  :-)

Автор: Gregorian 19.12.2006, 22:18
Обзор конечно интересен и познавателен. Спасибо! 
Но у меня нескромный вопрос. А на кой чёрт это нужно? По-моему интерфейс со времён Windows 95 ни как не улучшился, если не считать красоты. WPF чем лучше Windows Forms, чем лучше VCL, чем лучше Swing. Одни цели: рисовать и обрабатывать сигналы от компонентов интерфейса, которые как и 10 лет назад выполняю прежние функции. Хотя по красивости WPF напоминает Macromedia Flash, всё же он гадкий утёнок с тормозной жидкостью вместо крови.  smile 

Автор: ivashkanet 19.12.2006, 23:25
Цитата(Gregorian @  19.12.2006,  21:18 Найти цитируемый пост)
А на кой чёрт это нужно? По-моему интерфейс со времён Windows 95 ни как не улучшился, если не считать красоты.

Во первых красота не последняя вещь в этом мире.
А во вторых, изменяются сами контролы, приспосабливаются под пользователя. 
Ты ведь не будешь утверждать, что набрать дату вручную проще, чем выбрать на календаре smile 
Цитата(Gregorian @  19.12.2006,  21:18 Найти цитируемый пост)
которые как и 10 лет назад выполняю прежние функции.

Функция "добраться до другого города/места" не изменилась со времен... динозавров, но ты ведь не пересядешь с автомобиля на... осла  smile 

P.S. Модераторам: ИМХО, этому сообщению (и моему тоже) не место в этой теме. Им больше подходят религиозные войны 

Автор: mr.DUDA 19.12.2006, 23:27
Цитата(Gregorian @  19.12.2006,  21:18 Найти цитируемый пост)
 Хотя по красивости WPF напоминает Macromedia Flash, всё же он гадкий утёнок с тормозной жидкостью вместо крови.   

На чём основано это утверждение? Есть какие-либо бенчмарки, тесты?

Добавлено @ 23:28 
Цитата(ivashkanet @  19.12.2006,  22:25 Найти цитируемый пост)
P.S. Модераторам: ИМХО, этому сообщению (и моему тоже) не место в этой теме. Им больше подходят религиозные войны

Ещё один-два таких поста, и тема будет разделена на флеймовую в Разных вопросах, и относящуюся собственно к WPF.

Автор: ivashkanet 19.12.2006, 23:29
Не удерджался:
Цитата(Gregorian @  19.12.2006,  21:18 Найти цитируемый пост)
всё же он гадкий утёнок с тормозной жидкостью вместо крови. 

Машинка (автомобиль т.е.) тоже бензин ест. А ослу нужна только трава  smile 

Автор: Darkmaster 12.2.2007, 14:58
Небольшой, вопросик, если все это добро поставить, то можно для обратной совместимости разрабатывать софт и под Windows.Forms ?

Автор: mr.DUDA 12.2.2007, 15:44
Цитата(Darkmaster @  12.2.2007,  13:58 Найти цитируемый пост)
Небольшой, вопросик, если все это добро поставить, то можно для обратной совместимости разрабатывать софт и под Windows.Forms ?

Вопрос о том, можно ли на WPF писать софт под винформс, или о чём ?

Автор: Darkmaster 12.2.2007, 18:36
Ну, я имею ввиду сейчас при созданиии скажем нового проекта в VS можно выбрать вид приложения, например Console Application, Windows Forms. Вот, будет ли такая же возможность с установленым WPF?

P.S. С# начал совсем недавно, до этого занимался Делфи, теперь вот думаю стоит ли углубляться в Win Forms...

Автор: mr.DUDA 12.2.2007, 23:34
Вообще-то вопрос флеймовый, но отвечу: будет студия 2007 (Orcas), в ней будут все типы проектов, включая WinForms и Console App, плюс "новые" - WPF, WCF etc.

Автор: marcusmae 12.2.2007, 23:53
Цитата

будет студия 2007 (Orcas), в ней будут все типы проектов, включая WinForms и Console App, плюс "новые" - WPF, WCF etc.


WPF, WCF, ... в Orcas -е пока нету (January2007CTP).

Автор: mr.DUDA 12.2.2007, 23:56
ключевое слово: пока...

(иначе и смысла в Orcas нету как в таковом)

Автор: Любитель 13.2.2007, 16:17
Сорри - немного оффтоп.
Цитата(ivashkanet @  16.12.2006,  18:31 Найти цитируемый пост)
А на данный момент только МS замахнулась на 3D акселирацию в самой оси

В самой оси - возможно и да. Но на никсах весь ГУИ идёт через X-сервер, а XGL - появился горадо раньше даже всяких Windows Aero и даже раньше когда сие называлось Avalon (и выглядело немногим красивее). compiz позволяет встраивать кучу эффектов. А всё-таки OpenGL - это натуральное 3D + чисто на уровне графического процессора.

Чисто практический вопрос насчёт XAML. Он разрабатывается чисто MS или нет? Будет ли какая-то стандартизация сего дела? Есть ли либы для работы с XAML из явы и нэтив-кода и будут ли?

Автор: mr.DUDA 13.2.2007, 18:39
Цитата(Любитель @  13.2.2007,  15:17 Найти цитируемый пост)
Чисто практический вопрос насчёт XAML. Он разрабатывается чисто MS или нет? Будет ли какая-то стандартизация сего дела? Есть ли либы для работы с XAML из явы и нэтив-кода и будут ли?

Чисто M$, но есть попытка сделать его на open-source:
http://www.myxaml.com/

Остальные вопросы: нет, нет и нет  smile 

З.Ы. высказывания по поводу несостоятельности Win вообще и Aero в частности (так же как о крутости линуксов) - просьба вынести в Флейм, там уже несколько лет аргументированно забрасывают помидорами новые технологии мелкомягких, ничего нового я не услышал.

Автор: Exception 13.2.2007, 20:27
Цитата(mr.DUDA @  13.2.2007,  19:39 Найти цитируемый пост)
Чисто M$, но есть попытка сделать его на open-source:
http://www.myxaml.com/


Не совсем smile .
Идея та же, но вещи разные абсолютно.

Автор: mr.DUDA 13.2.2007, 22:37
Чем же они разные ? Тем, что MyXAML пытаются сделать "то же самое" но на чистом винапи, и без 3D ?  smile 

Автор: Exception 14.2.2007, 19:33
Нет, просто у них ведь все элементы разные. Ну то есть перенести с одного на другое нелегко smile . А потому нельзя MyXAML называть

Цитата(mr.DUDA @  13.2.2007,  19:39 Найти цитируемый пост)
попытка сделать его [Longhorn XAML] на open-source


smile

Автор: nikitao 9.3.2007, 11:49
А тем временем вышла beta 2 Блендера. Нововведения : 

Цитата

What's changed in this beta?

    * You can now instantiate resources from the Resources panel. For example, you can drag and drop a button style onto the artboard and create a button out of it instead of creating a button and applying it as a separate task.
    * You can see inner exceptions when an exception happens on the design surface, allowing you to see more details about the cause of an exception.
    * You now get font previews in the Text category of the Properties panel which makes it easier to choose your font.
    * After adding an event handler, the XAML file is now automatically saved for you.
    * Configuring value editors has been improved. For example, you'll find editing BitmapEffects or adding items to an ItemsControl such as ContextMenu are now much easier to do.



http://www.microsoft.com/downloads/details.aspx?FamilyId=31F7B20E-9A1D-4317-8146-FBB6A39B1A2C&displaylang=en

Кроме того теперь нововведение ( лично я раньше такого не видел )  , что многое вы не сможете скачать с MS , пока не докажете подлинность операционки. К примеру так просто не скачать тот же самый   http://www.microsoft.com/downloads/details.aspx?FamilyId=F54F5537-CC86-4BF5-AE44-F5A1E805680D&displaylang=en

Автор: Exception 9.3.2007, 22:32
Цитата(nikitao @  9.3.2007,  12:49 Найти цитируемый пост)
Кроме того теперь нововведение ( лично я раньше такого не видел )  , что многое вы не сможете скачать с MS , пока не докажете подлинность операционки. К примеру так просто не скачать тот же самый    Visual Studio 2005 extensions for .NET Framework 3.0 (WCF & WPF) 


(тссс...)

http://www.google.ru/search?q=vsextwfx+filetype:msi

Автор: nikitao 10.3.2007, 00:25
Цитата(marcusmae @  13.2.2007,  00:53 Найти цитируемый пост)
WPF, WCF, ... в Orcas -е пока нету (January2007CTP). 

WPF теперь есть в мартовской версии ( к 8 марта выпустили  ) 

http://www.microsoft.com/downloads/details.aspx?FamilyID=B533619A-0008-4DD6-9ED1-47D482683C78&displaylang=en


Автор: iddqd 5.4.2007, 17:06
Только что пришел с семинара Microsoft. День разработчика, видите ли. 70% семинара посвящено WPF(E) и Orcas. Все выглядит очень красиво и интересно, особенно на словах smile
Посмотрел презентации, почитал материал - очень понравилось.

Автор: Exception 5.4.2007, 18:26
Поработав с XUL, могу сказать, что за XML-разметкой GUI будущее. Особенно мне нравится идея XSL-трансформирования XML-данных в XUL-разметку smile . Впрочем, это уже оффтоп.

Добавлено через 4 минуты и 17 секунд
Что мне не очень нравится в XAML -- так это то, что он привязан к одной реализации. Слишком много фич -- все эти 3D-объекты, векторная графика. В XUL разметкой определяется только структура формы (окна), а детали отображения определяются стилями CSS, мне кажется, этот подход несколько лучше предлагаемого XAML.

Добавлено через 6 минут и 30 секунд
Это я к тому, что едва ли кому-то удастся реализовать XAML для чего-то кроме WPF, тогда как XUL можно использовать как для создания UI для расширений к приложениям Mozilla, так и для создания самостоятельных приложений.
Microsoft, похоже, тоже это сообразила и параллельно разрабатывает "облегчённый" WPF/E. Посмотрим..

Автор: Kaz 10.4.2007, 06:58
Можно поинтересоваться - на какой стадии эта новая технология ? Уже "релиз" или только на стадии разработки\тестирования ?

Автор: Void 10.4.2007, 16:28
Kaz, .NET 3.0 с поддержкой WPF давно в релизе, а вот средства разработки для него (расширения Visual Studio, дизайнеры и т. п.) — пока в бете.

Автор: Kefir 4.7.2007, 10:18
Я тут с месяц назад начал щупать этот wpf - очень интересная штуковина, скажу я вам. конечно же, скачал себе триал блендера (ну и дизайнера заодно). блендер - сказка (только не для моего лапика, ибо страшно тормозил после 30 мин работы в нём). очень порадовало то, что создание своих (красивых) контролов стало элементарнейшей штукой (главное рахобраться один раз, а потом уже как по маслу). добавление анимаций (а-ля фейд, глов и т.д.) - раз-два и готово. очень рад что всё идёт именно туда куда надо - к красоте. спец. контролы а-ля SimpleButton выполнены на 5 баллов. они, кстати, и должны служить отправной точкой при создании своих контролов (по сути ставите такой вот SimpleButton на форму, из меню щёлкаете Edit template и кастомайзите кнопку до полного удоволетворения). также наличие стайлов очень порадовало - создал стиль, например, с любимым шрифтом или баграундом, назначил всем нужным контролам. коли разочаровался в шрифте - поменял шрифт у стиля и вуаля - всё готово. и по поводу анимаций - тоже штука замечательная, реализована как во флеше, с таймлайнами и всё такое. всё это те самые вкусности, которых мне так не хватает в обычных формсах.

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

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)