Windows phone 7.1, Listpicker fullmodeitemtemplate обязательный текст - PullRequest
0 голосов
/ 11 сентября 2011

Я пытаюсь изменить размер шрифта для своих элементов в списке выбора.Я использую fullmodeitemtemplate, чтобы иметь возможность изменять размер шрифта и т. Д.

Проблема в том, что я понятия не имею, как связать текст для элементов в шаблоне

<DataTemplate x:Name="PickerFullModeItemTemplate">
            <StackPanel Orientation="Horizontal" Margin="16 21 0 20" Background="Orange" Width="110" Height="110" HorizontalAlignment="Center" VerticalAlignment="Center">
                <TextBlock Text="{WHAT TO TYPE HERE?}" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="5" FontSize="36"/>
            </StackPanel>
        </DataTemplate>

Я заполняю свой список выбораустановив источник данных в C # следующим образом:

foreach (Item i in weight)
            {
                sourceInput.Add(i.name);
            }
        }
        InputSelector.ItemsSource = sourceInput;

Это оставляет мне список источников данных, содержащий только строки, а затем я не знаю, как связать текст для каждого элемента.Я прочитал некоторый пост о том, как это сделать, когда список источников находится в этом формате

source.Add(new Cities() { Name = "Mexico", Country = "MX", Language = "Spanish" });

        this.listPicker.ItemsSource = source;

, а затем часть xaml выглядит примерно так:

<TextBlock Text="{Binding Name}"/>

любая помощь будет принята с благодарностью:)

ОБНОВЛЕНИЕ

Я нашел правильную привязку для привязки к исходным элементам.

<TextBlock Text="{Binding BindsDirectlyToSource=True}"/>

Похоже, это путьисходные элементы привязываются к текстовому блоку

Ответы [ 2 ]

1 голос
/ 11 сентября 2011

Вы должны добавить объекты типа Cities в свою коллекцию sourceInput.

Введите Text="{Binding Name}" правильно.

Скорее всего, ваш класс Cities просто не реализует интерфейс INotifyPropertyChanged . Вы должны уведомлять пользовательский интерфейс каждый раз, когда вы обновляете Имя и другие свойства, к которым вы привязали свои элементы пользовательского интерфейса.

0 голосов
/ 20 мая 2013
<TextBlock Text="{Binding Name}"/>

это круто, но для средства выбора списков также есть свойство DisplayMemberPath, поэтому

при добавлении списков:

DisplayMemberPath = "Name"

...