WP7 Silverlight: привязка данных с тем же XAML во время разработки и выполнения - PullRequest
1 голос
/ 01 августа 2011

Я хотел бы использовать одни и те же данные при проектировании и во время выполнения в моем приложении WP7. Соответствующая часть XAML выглядит следующим образом:

<phone:PhoneApplicationPage ...
  d:DataContext="{d:DesignData Source=data.xaml}"
  DataContext="{Binding Source=???}"

Таким образом, я могу видеть данные во время разработки. Есть ли способ использовать одни и те же данные во время выполнения?

1 Ответ

1 голос
/ 01 августа 2011

Не было известно о существовании d: DataContext. Смею сказать:

<phone:PhoneApplicationPage ...
d:DataContext="{d:DesignData Source=data.xaml}"
DataContext="{Binding Source=data.xaml}"

--- Редактирование добавлено -------------------

Ну ... проверка тут и там обнаружила, что, как и ожидалось, «DesignData» - это не то же самое, что «Binding» (я неправильно это прочитал, извините). «DesignData» имеет возможность создавать во время разработки объект, основанный на XML-файле, и это не влияет на время выполнения. Связывание, которое мы пытаемся создать, никогда не сработает, поскольку его целью является использование уже созданных экземпляров объектов.

Когда вы запускаете шаблон по умолчанию для панорамных приложений, он создает свои собственные данные (проверьте код для MainViewModel.cs) ... и поэтому он показывает, что он отличается от того, что содержится в XML-файле. Все, что вам нужно сделать, это вручную открыть XML в методе «LoadData» и загрузить данные файла, чтобы вы могли отображать их во время выполнения и во время разработки.

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