![]() |
|
Модераторы: gambit, Kefir, Partizan |
![]()
|
|
| Compositum |
|
|||
|
Senior developer ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 430 Регистрация: 6.1.2008 Где: Санкт-Петербург Репутация: 1 Всего: 1 |
Скачал и установил MS Expression Blend 3 Trial. Читаю Мак-Дональда, смотрю видео-презентации на этом форуме Кефира (огромнейшее спасибо ему за его работы!!!). Возник вопрос: изначально я предполагал, что Microsoft Expression Blend создает только XAML-файлы, которые я затем должен буду включить в состав своего cs-проекта и студия автоматом сгенерирует на их основании нужные классы. Однако я вижу, что MS Expression Blend параллельно создает и cs-файлы. Как-то меня это сбивает с толку. Так же пока не до конца понимаю, как будет происходить "состыковка кораблей" - GUI WPF и кода, который я пишу, под который, собственно и делаю WPF GUI...
Путаюсь, каша в голове... |
|||
|
||||
| Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 9 Всего: 67 |
Compositum, а в чём проблема? нарисовали дизайн, получили xaml + cs...потом эти оба файла включаем в проект и пишем код в файл cs...
-------------------- СУВ, Partizan. |
|||
|
||||
| Roxio |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 42 Регистрация: 6.2.2008 Репутация: нет Всего: нет |
Blend - это не просто графический редактор. Это, условно говоря, та же Visual Studio (Blend умеет открывать проекты). Но разница в том, что в студии ты пишешь код, а в бленде - рисуешь дизайн. Нарисовав в бледне дизайн - в студии опишешь только логику для вьюхи. Это позволяет одновременно (с использованием системы контроля версий) работать над одни проектом как дизайнеру, так и программисту. Не знаю понятно ли объяснил, но старался...
|
|||
|
||||
| Compositum |
|
|||
|
Senior developer ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 430 Регистрация: 6.1.2008 Где: Санкт-Петербург Репутация: 1 Всего: 1 |
Для того и делают отделение GUI от основной части (ядра) приложения, дабы НЕ писать код в том же cs-файле. Для этого и существует такое понятие, как partial class |
|||
|
||||
| Partizan |
|
||||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 9 Всего: 67 |
Compositum, эта фраза позволительна в Windows Forms...ибо там действительно в шаблоне есть файл *.designer.cs и *.cs, в котором висят обработчики событий.... в WPF фраза "дабы не писать код в том же cs-файле" вообще смысла не имеет..ибо cs файл, в отличие от WinForms, всего один Windows Forms: *.designer.cs + *.cs WPF: *.xaml + *.cs з.ы. на самом деле в WPF есть ещё один cs, в котором загрузка xaml идёт...но о нем Вам знать совсем не обязательно на данном этапе Добавлено @ 20:47
Гуй от кода отделяют не для того, чтобы "не писать код в том же cs файле", а для: 1. Упрощения изменения view и поддержки программы... 2. Для упрощения разделения труда UI-щика и кодера.... Это сообщение отредактировал(а) Partizan - 23.3.2009, 20:50 -------------------- СУВ, Partizan. |
||||
|
|||||
| Compositum |
|
|||
|
Senior developer ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 430 Регистрация: 6.1.2008 Где: Санкт-Петербург Репутация: 1 Всего: 1 |
Мак-Дональд в своей книге приводит 4 варианта (подхода) создания WPF-интерфейса (стр 75):
Для первого варианта (только код) он показывает, как создавать интерфейс посредством ручного написания cs-кода. Однако делает это как-то странно: он пишет код прямо в методе InitializeComponent(). Я удивился этому, т.к. подумал, что конструктор VS затрёт все мои изменения, однако, тем не менее, сделал так, как пишет автор. Написав код нажал F5 и... получил ошибку компиляции - студия стала материться на метод InitializeComponent() + полностью затёрла все мои изменения. Второй вариант он так же пихает в метод InitializeComponent() - я не стал повторять его подвиги в виду их бессмысленности - все равно получу тот же результат, что и для первого варианта. Может я чего упустил из виду? |
|||
|
||||
| Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 9 Всего: 67 |
Compositum, явно... -------------------- СУВ, Partizan. |
|||
|
||||
| dazy |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 344 Регистрация: 15.9.2006 Репутация: 3 Всего: 8 |
Бленд 3 выполняет гораздо больше работы нежели бленд 2. Бленд 3 и ведет себя по-другому нежели второй. Например для редактирования cs он не вызывает студию к себе на помощь. В тройке, код можно без студии править, там и интеллисенс есть. |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | WPF и Silverlight | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |