J'utilise l'exemple Microsoft mais je fais quelques changements. Je peux remplir les données dans la liste de sélection mais après avoir sélectionné un élément, il ne le remet pas dans l'élément sélectionné. Je ne suis pas sûr de ce qui ne va pas. J'essaie de remplacer les données sys: string par une requête. Qu'est-ce que je fais mal?Remplir wp7 ListPicker
<phone:PhoneApplicationPage
x:Class="WO_App.Page1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:toolkit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit"
FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}"
SupportedOrientations="Portrait" Orientation="Portrait"
mc:Ignorable="d" d:DesignHeight="768" d:DesignWidth="480"
shell:SystemTray.IsVisible="True">
<Grid x:Name="LayoutRoot" Background="Transparent">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
<TextBlock x:Name="ApplicationTitle" Text="MY APPLICATION" Style="{StaticResource PhoneTextNormalStyle}"/>
<TextBlock x:Name="PageTitle" Text="ListPicker" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/>
</StackPanel>
<!--ContentPanel - place additional content here-->
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<toolkit:ListPicker x:Name="TestList" Header="Select a part" ExpansionMode="FullscreenOnly">
<!--This is the data I am trying to replace with binding
<sys:String>1</sys:String>
<sys:String>2</sys:String>
<sys:String>3</sys:String>
<sys:String>4</sys:String>
<sys:String>5</sys:String>
<sys:String>6</sys:String>
<sys:String>7</sys:String>
<sys:String>8</sys:String>
<sys:String>9</sys:String>
<sys:String>10</sys:String>
<sys:String>11</sys:String>
<sys:String>12</sys:String>
<sys:String>13</sys:String>-->
<toolkit:ListPicker.FullModeItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" Margin="16 21 0 20">
<TextBlock Text="{Binding Num}"
Margin="0 0 0 0"
FontSize="43"
FontFamily="{StaticResource PhoneFontFamilyLight}"/>
</StackPanel>
</DataTemplate>
</toolkit:ListPicker.FullModeItemTemplate>
</toolkit:ListPicker>
<Button Content="Chosen" Height="72" HorizontalAlignment="Left" Margin="284,179,0,0" Name="Button1" VerticalAlignment="Top" Width="160" />
</Grid>
</Grid>
Voici le code VB.
Partial Public Class Page1
Inherits PhoneApplicationPage
Public Sub New()
InitializeComponent()
End Sub
Private Sub PhoneApplicationPage_Loaded(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles MyBase.Loaded
Dim source As New List(Of Numbers)
For x = 1 To 15
source.Add(New Numbers(x))
Next x
Me.TestList.ItemsSource = source
End Sub
Private Sub Button1_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button1.Click
Dim selectedItem As String = Me.TestList.SelectedItem.ToString
Dim selectedIndex As String = Me.TestList.SelectedIndex
MessageBox.Show("you chose " & selectedItem & vbCrLf & selectedIndex)
End Sub
Public Class Numbers
Public Property Num() As Integer
Get
Return m_Num
End Get
Set(value As Integer)
m_Num = value
End Set
End Property
Private m_Num As Integer
Public Sub New(myNum As Integer)
Me.Num = myNum
End Sub
End Class
End Class
Bienvenue sur Stack Overflow! Veuillez poster votre solution comme une réponse plutôt que de l'éditer dans la question. Cela rend plus clair la question et la réponse. Merci! –