Я разрабатываю приложение WP7 и создаю список с несколькими элементами. Мне было интересно, есть ли способ просмотреть, как будет выглядеть макет. Пока что, поскольку элементов не существует, я не могу их «предварительно просмотреть». Есть ли способ передать некоторые фиктивные данные или другие методы, которые помогут в предварительном просмотре макетов xaml?
Предварительный просмотр макета xaml с конкретными демонстрационными данными
Ответы (2)
Вы должны предоставить дизайнеру данные.
Существует несколько способов сделать Это.
Один из самых простых — предоставить DataContext в объявлении XAML, чтобы дизайнер мог использовать его при отображении страницы.
В объявлении страницы Xaml:
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
d:DataContext="{d:DesignInstance local:DesignerSampleData, IsDesignTimeCreatable=True}"
Пример класса данных должен содержать данные, к которым привязаны ваши визуальные элементы:
public class DesignerSampleData: INotifyPropertyChanged
{
public DesignerSampleData()
{
_sampleData = "My test string that will display in VS designer for preview";
}
private String _sampleData;
public String SampleData
{
get { return _sampleData; }
set
{
if (value != _sampleData)
{
_sampleData = value;
NotifyPropertyChanged("SampleData");
}
}
}
В xaml привязка к SampleData:
<TextBlock Text="{Binding SampleData}" />
Во-первых, это помогает, если вы используете MVVM или, по крайней мере, привязку ItemsSource + ItemTemplate для отображения ваших элементов. Как только вы окажетесь там, в Expression Blend есть несколько отличных инструментов для выборочных данных.
Вы переходите на вкладку «Данные», нажимаете «Создать демо-данные/Новые демо-данные». Он создаст образец данных в виде XAML и привяжет к нему вашу страницу следующим образом:
d:DataContext="{d:DesignData SampleData/MainViewModelSampleData.xaml}"
Затем вы можете добавить новые свойства, коллекции моделей с различными типами данных, и он автоматически сгенерирует некоторые данные, которые вы сможете использовать в своем XAML.