簡體   English   中英

Windows Phone 7.1,Listpicker fullmodeitemtemplate綁定文本

[英]Windows phone 7.1, Listpicker fullmodeitemtemplate binding text

我正在嘗試更改列表選擇器中項目的字體大小。 我使用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#中設置itemsource來填充列表選擇器

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

這給我留下了僅包含字符串的itemsource列表,然后我不知道如何為每個項目綁定文本。 當itemsource列表采用這種格式時,我閱讀了一些有關如何執行此操作的文章

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

        this.listPicker.ItemsSource = source;

然后xaml部分是這樣的

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

任何幫助將不勝感激 :)

更新

我找到了與原始項目綁定的正確綁定。

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

看起來就是這樣,然后將源項綁定到文本塊

您應該將Cities類型的對象添加到您的sourceInput集合中。

鍵入Text="{Binding Name}"是正確的。

您的Cities類很可能沒有實現INotifyPropertyChanged接口。 每次更新將UI元素綁定到的Name和其他屬性時,都應通知UI。

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

這很酷,但對於列表選擇器,還有DisplayMemberPath屬性,因此,

在listpicker上添加:

DisplayMemberPath =“名稱”

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM