Windows Phone 8.1 gridview

How to create a stack panel in gridview with various elements in the stack panel reacting to different click events?

The batch folder will contain 2 appbarbutton buttons, and each appbarbutton has a text block, which increases depending on the number of clicks ...

<GridView ItemsSource={Binding}> <GridView.ItemTemplate> <DataTemplate> <StackPanel Orientation="Horizontal"> <StackPanel Orientation="Vertical"> <StackPanel Orientation="Horizontal"> <AppBarButton Icon="Like" Name="like" IsCompact="True" Click="like_Click"/> <TextBlock Name="numOfLike" Text="{Binding No_Positive_Likes}"/> </StackPanel> <StackPanel Orientation="Horizontal"> <AppBarButton Icon="Dislike" Name="dislike" IsCompact="True" Click="dislike_Click"/> <TextBlock Name="numOfDisLike" Text="{Binding No_negative_Likes}"/> </StackPanel> </StackPanel> <StackPanel Orientation="Vertical" Tapped="loadQuestionAnswer_Click"> <TextBlock Name="question" Text="What is my name" FontSize="30"/> <TextBlock Text="2013-12-10"/> </StackPanel> </StackPanel> </DataTemplate> </GridView.ItemTemplate> </GridView> 
+1
source share
1 answer

I processed the same script using the BehaviorsSDK. This SDK makes life easier by adding the ability to call a function for an event. Just add the link to your project in the BehaviorsSDK, and then add the method to the item data class for each event. Here is an example:

 ObservableCollection<ItemModel> Items; public class ItemModel { public bool No_Positive_Likes ... public bool No_Negative_Likes ... public void LikeButtonPressed() { ... } public void DislikeButtonPressed() { ... } } 

Then in your xamll:

  xmlns:i="using:Microsoft.Xaml.Interactivity" xmlns:core="using:Microsoft.Xaml.Interactions.Core" ... <GridView ItemsSource={Binding}> <GridView.ItemTemplate> <DataTemplate> <StackPanel Orientation="Horizontal"> <StackPanel Orientation="Vertical"> <StackPanel Orientation="Horizontal"> <AppBarButton Icon="Like" Name="like" IsCompact="True"> <i:Interaction.Behaviors> <core:EventTriggerBehavior EventName="Click"> <core:CallMethodAction TargetObject="{Binding Mode=OneWay}" MethodName="LikeButtonPressed"/> </core:EventTriggerBehavior> </i:Interaction.Behaviors> </AppBarButton> 
+1
source

All Articles