Я использую Winforms с .NET 1.1 и хочу начать изучать WPF.
Я ищу хорошие ресурсы для новичка в WPF. Что мне следует прочитать, какие инструменты мне нужны и какие передовые практики мне следует придерживаться?
Я использую Winforms с .NET 1.1 и хочу начать изучать WPF.
Я ищу хорошие ресурсы для новичка в WPF. Что мне следует прочитать, какие инструменты мне нужны и какие передовые практики мне следует придерживаться?
Ознакомьтесь с этим сообщением StackOverflow, в котором есть список Книжные рекомендации.
Что касается передовых методов, ознакомьтесь с шаблоном MV-VM. . Похоже, он получил наибольшее распространение в стране WPF.
Ознакомьтесь с этим сообщением, чтобы узнать, какие инструменты можно использовать для WPF. разработка.
Форум MSDN - отличное место для ресурсов, так как - это файлы справки MSDN в WPF.
Я лично рекомендую вам забыть все, что вы узнали о WinForms. WPF - это совершенно другая модель, и как только я наконец отказался от своей фразы «Я сделал это в WinForms, но этот способ не работает в WPF», у меня был один из тех моментов «лампочки».
Надеюсь это поможет!
Кривая обучения высока, но есть много действительно хороших ресурсов. И документация MSDN и образцы SDK (как уже упоминалось некоторыми) действительно хороши.
Одна вещь, которая поможет вам, - это сразу признать кривую обучения и не расстраиваться, когда это не имеет смысла. На самом деле есть много понятий, которые нужно «грокнуть», прежде чем вы сможете делать какие-то хотя бы базовые вещи.
Все уже упомянутые книги WPF ценны по-своему. По моему личному опыту, я сначала получил копию WPF Unleashed и безуспешно пытался прочитать ее. Только когда я взял Application = Code + Markup Чарльза Петцольда и прочитал кое-что из этого ... прежде, чем я смог даже начать понимать WPF Unleashed. Однако моему мозгу нужны детали, прежде чем концепции действительно утонут ...
У Тима Сниса есть отличный список блоггеров WPF, которых я считаю ценными, чтобы присоединиться к сообществу WPF: WPF Bloggers
несколько блогов в моем списке обязательных к прочтению:
Еще мне хотелось бы получить библиотеку сниппетов Dr. WPF (находится здесь). Это очень хороший способ изучить некоторые из основных понятий типа сантехники, такие как свойства зависимостей, перенаправленные события и перенаправленные команды.
Наконец, я бы получил копию Blend (v2.5 все еще находится в стадии бета-тестирования и бесплатен) и использовал бы ее для генерации xaml, а затем погрузился в этот сгенерированный xaml, чтобы понять, что вы сделали в Blend, сопоставляется с API WPF.
Надеюсь это поможет. Удачи.
1 Начните понимать XAML и иерархию управления - разметку пользовательского интерфейса, а также новые термины и функции, связанные с ней. KaXaml - отличный инструмент для изучения XAML. Его можно бесплатно загрузить http://www.kaxaml.com/
2 Поскольку у вас уже есть длительный опыт работы с .NET, перейдите непосредственно к образцам SDK и начните работать с ними, посмотрите, что происходит, поиграйте с XAML. http://msdn.microsoft.com/en-us/library/ms771449.aspx
3 Если вы ищете ресурсы блога, вот мое лучшее предложение
Но выбор простого сценария пользовательского интерфейса, который вы уже реализовали или где-то видели, и попробуйте реализовать его в WPF - это, вероятно, лучший подход к изучению новой технологии.
И, пожалуйста, не бойтесь MVVM, эти вещи пригодятся вам позже, когда вы познакомитесь с платформой WPF и XAML.
Книга Адама Натана - WPF Unleashed очень хорошая.
Я бы порекомендовал книгу Windows Presentation Foundation Unleashed. Адам Натан
Тогда рекомендую написать заявку. Как и в любой другой среде разработки, здесь нет идеальных руководящих принципов. Вы должны найти те, которые наиболее подходят для ваших обстоятельств. Единственный способ сделать это - просто начать кодировать.
Что касается инструментов, лучше всего вам подойдет Visual Studio 2008 [Express]. Или вы можете хромать вместе с XamlPad.
Я также очень рекомендую использовать Blend вместе с VS 2008. Blend отлично подходит для создания анимации.
Предварительная версия Blend 2.5 можно бесплатно скачать.
Мне нравится Блог дизайнеров WPF, в котором есть несколько хороших руководств о том, как создавать WPF в Blend.
Хотя это уже было перечислено выше, я хотел повторить один момент.
Kaxaml без исключений, лучший свободный редактор xaml из существующих. В нем есть библиотека фрагментов, IntelliSense, разделенное представление, ползунок xaml (красивая печать) и многое другое.
Я только хотел бы, чтобы мы могли подключить несколько сборок (на которые вы могли ссылаться из xaml) ...
Робби Ингебретсен, ты молодец.
Я также смиренно предлагаю взглянуть на мой блог 2000 вещей, которые вы должны знать о WPF, где я публикую единая информация о WPF каждый день. Блог начинается с основных принципов и постепенно переходит к более сложным темам, так что это хорошее место для начинающих.
Освоение WPF (и silverlight, и практически любой векторной XAML-инфраструктуры .net rich UI) требует большего, чем понимание новых концепций разработки (а их много). Недостаточно полностью понять свойства зависимостей, присоединенные свойства, шаблоны, привязку данных, стили, MVVM, механизм макета, визуальные состояния и части, эффекты, перенаправленные события ... концепции в графике (например, векторная графика, растровая графика, рендеринг, методы многоуровневой графики, анимация, пиксельные шейдеры, градиенты, геометрия, контуры, кисти, матрицы преобразования и т. д.). В дополнение к этому вам необходимо изучить и понять M-V-VM, которая является не просто новым шаблоном проектирования - это совершенно новая парадигма программирования. Так что есть чему поучиться ... и проблема в том, что независимо от того, какую отправную точку вы выберете, вы всегда чувствуете, что чего-то не хватает.
Я попробовал несколько книг в качестве отправной точки, и многие из них меня сильно сбили с толку. Затем я нашел «Illustrated WPF» Дэниела М. Солиса, и этот мне помог. Он объясняет концепции из мира графики понятным разработчикам способом, а затем обучает всем новым концепциям пользовательского интерфейса на основе XAML, слегка касаясь каждой темы и погружаясь в конкретные темы с помощью демонстрации. Просто следуя инструкциям, вы обнаружите, что многому научились и, что более важно, устранили фактор страха.
Как только вы овладеете этим, вы можете перейти к «WPF Unleashed» Адама Натана и погрузиться глубже. Это дает вам гораздо более глубокое представление о концепциях, уникальных для WPF, которые, я считаю, у вас будет гораздо больше шансов понять, если вы хотя бы раз ознакомились с каждой функцией. Они каким-то образом завершают друг друга и имеют смысл только вместе.
После этого вам все еще предстоит многому научиться, но на этом этапе вы можете разрабатывать многофункциональные приложения и изучать новые темы по ходу дела ...
Наслаждаться :-)
Visual Studio 2008 (есть бесплатная экспресс-версия). Это все необходимые инструменты.
Тогда попробуйте несколько видео с практическими рекомендациями. Вот хорошее начало: http://windowsclient.net/learn/videos_wpf.aspx
У Microsoft есть достойное введение в MSDN: http://msdn.microsoft.com/en-us/library/aa970268.aspx
Один ресурс, который, как я обнаружил, действительно мне помог, был от кода jfo: http://blogs.msdn.com/jfoscoding/articles/765135.aspx.
Документ озаглавлен «WPF для тех, кто знает WinForms», и это именно та позиция, на которой я был в прошлом году!