Кто-нибудь с опытом ориентации на Silverlight и WPF? - PullRequest
2 голосов
/ 18 февраля 2009

Можно ли разрабатывать против Silverlight и WPF, используя один и тот же исходный код? Может быть, использовать несколько блоков #define там, где это необходимо.

Ответы [ 5 ]

3 голосов
/ 18 февраля 2009

Теоретически это должно быть выполнимо. Это не большая проблема для кода. Однако вам нужно быть очень осторожным с XAML и использовать только пересекающиеся подмножества WPF и SL (1), поскольку для XAML нет #if/#endif.

(1) Вопреки распространенному мнению, SL не является подходящим подмножеством WPF. Он имеет некоторые функции, которых нет в WPF , хотя над ними работают.

1 голос
/ 18 февраля 2009

У меня нет опыта в этом вопросе, но я использовал компонент, предназначенный как для WPF, так и для среды Silverlight с одинаковым кодом (различий мало)

Компонент - Диаграмма от Visifire , и это с открытым исходным кодом

Может быть, вы можете взглянуть на это

1 голос
/ 18 февраля 2009

Кстати, PRISM (составной блок приложений из шаблонов и практик) теперь поддерживает Silverlight, и есть C9 видео с кратким примером использования кода в WPF и Silverlight.

Я думаю, что если вы придерживаетесь MV-V-VM (или что-то в этом роде), тогда большая часть вашего внутреннего кода будет использоваться многократно, но сам XAML, возможно, придется разветвить, если вы хотите полностью использовать "rich" опыт, если вы не хотите использовать бета-версию VSM для WPF.

0 голосов
/ 16 марта 2011

Flashcards.Show приложение является отличным примером этого WPF / SL / WP7 совместного использования кода и межплатформенных возможностей. http://windowsteamblog.com/windows_phone/b/wpdev/archive/2011/03/03/flashcards-show-planning-a-cross-platform-solution.aspx

Концепция кроссплатформенности довольно проста, потому что все работает на .NET и аналогичной системе привязки XAML. Мой совет здесь - больше времени уделять архитектуре приложения с точки зрения MVVM и других абстракций для разделения зависимостей платформы. Таким образом, большая часть кода может быть повторно использована во всех случаях, в то время как часть XAML может потребоваться переписать, зависит от визуальной сложности приложения на разных платформах.

0 голосов
/ 19 февраля 2009

Вы можете использовать связывание файлов Visual Studio для включения классов из проектов WPF в Silverlight - но только в том случае, если они не выполняют каких-либо действий на основе пользовательского интерфейса или XAML (поскольку именно здесь вы обычно найдете несоответствия между этими двумя) ...

Так что придерживайтесь бизнес-логики и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...