2010-08-04 8 views
1

Je développe une application Windows Phone. J'ai défini DataTemplate d'un ListBox.ItemTemplate comme suit:ListBox.ItemTemplate avec un modèle de contrôle personnalisé dans DataTemplate

<ListBox Margin="10,10,8,8" x:Name="ChoicesList"> 
    <ListBox.ItemsPanel> 
    <ItemsPanelTemplate> 
     <StackPanel /> 
    </ItemsPanelTemplate> 
    </ListBox.ItemsPanel> 
    <ListBox.ItemTemplate> 
    <DataTemplate> 
     <Grid x:Name="ListBoxItemLayout" Background="Transparent" Margin="10"> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="0.281*"/> 
      <ColumnDefinition Width="0.719*"/> 
     </Grid.ColumnDefinitions> 
     <Image Source="{Binding ImagePath}" Height="100"/> 
     <StackPanel Margin="5,0,0,0" Grid.Column="1"> 
      <TextBlock x:Name="Name" TextWrapping="Wrap" Text="{Binding Name}" Style="{StaticResource PhoneTextTitle3Style}"/> 
      <TextBlock x:Name="Description" Margin="0,5,0,0" TextWrapping="Wrap" Text="{Binding Description}" d:LayoutOverrides="Width" Style="{StaticResource PhoneTextSmallStyle}"/> 
      <TextBlock x:Name="Rating" TextWrapping="Wrap" Text="{Binding Rating}" /> 
     </StackPanel> 
     </Grid> 
    </DataTemplate> 
    </ListBox.ItemTemplate> 
</ListBox> 

Je veux convertir tout le contenu à l'intérieur du ListBoxItem comme contrôle parce que je veux ajouter un événement Cliquez pour cela.

Comment est-ce que je peux faire ceci?

Merci.

+1

Y a-t-il une raison pour laquelle vous ne pouvez pas utiliser 'MouseLeftButtonUp' sur votre grille ListBoxItemLayout? – Stephan

+0

Oui: Je suis très nouveau sur le développement de Silverlight. – VansFannel

+0

Une solution (pas la seule) peut être trouvée ici: http://social.msdn.microsoft.com/Forums/en-US/windowsphone7series/thread/bffb1cfc-cd2d-4af6-a306-32972ed3874d – VansFannel

Répondre

1

En fusion, vous pouvez simplement utiliser l'option "Make into Control".

Vous devriez également envisager d'utiliser l'événement "SelectionChanged" dans la liste, plutôt que de cliquer (tapoter) sur le contrôle.

Questions connexes