Windows Phone 7.1, ListPicker FullModeItemtEmplate Texto de enlace
-
28-10-2019 - |
Pregunta
Estoy tratando de cambiar el tamaño de fuente de mis elementos en un selector de lista. Utilizo una MODEMEDEITEMTEMPLATE para poder cambiar FontSize, etc.
El problema es que no tengo idea de cómo vincular el texto para los elementos en la plantilla
<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>
Uplico mi selección de listadores configurando el elemento en C# como este
foreach (Item i in weight)
{
sourceInput.Add(i.name);
}
}
InputSelector.ItemsSource = sourceInput;
Esto me deja con una lista de artículos de elementos que solo contiene cadenas, entonces no sé cómo vincular el texto para cada elemento. Leí una publicación sobre cómo hacerlo cuando la lista de artículos de elementos está en este formato
source.Add(new Cities() { Name = "Mexico", Country = "MX", Language = "Spanish" });
this.listPicker.ItemsSource = source;
Y entonces la parte XAML es algo como esto
<TextBlock Text="{Binding Name}"/>
Cualquier ayuda sería muy apreciada :)
ACTUALIZAR
Encontré el enlace correcto para la unión a los SourceItems.
<TextBlock Text="{Binding BindsDirectlyToSource=True}"/>
Parece que ese es el camino a seguir, luego los elementos de origen se unen al bloqueo text.
Solución
Debería agregar objetos de tipo Cities
para usted sourceInput
recopilación.
Mecanografía Text="{Binding Name}"
es correcto.
Lo más probable es que su clase de ciudades simplemente no implementa el Inotifypropertychanged interfaz. Debe notificar a la interfaz de usuario cada vez que actualice el nombre y otras propiedades a las que tiene sus elementos de interfaz de usuario.
Otros consejos
<TextBlock Text="{Binding Name}"/>
Es genial, pero para el selector de lista también hay una propiedad de membermemberPath, así que, por lo tanto,
En ListPicker Agregar:
DisplayMemberPath = "Nombre"