2017-08-31 2 views
0

Ich habe eine ListeView und Element ausgewählt event.Hier möchte ich mein erstes Element standardmäßig ausgewählt werden bei Erscheinen der Liste auf View.Later anderen Element auswählen sollte es normal funktionieren.Default Auswahl des ersten Elements in Listview

 ListView listView = new ListView 
     { 
      ItemsSource = staticSpListDetailses, 

      ItemTemplate = new DataTemplate(() => 
      { 

       var nameLabel = new Label(); 
       nameLabel.FontSize = 18; 
       nameLabel.WidthRequest = 180; 
       nameLabel.HorizontalTextAlignment = TextAlignment.Start; 
       nameLabel.FontAttributes = FontAttributes.Bold; 
       nameLabel.SetBinding(Label.TextProperty, "Name"); 

       var subtitlelabel = new Label(); 
       subtitlelabel.FontSize = 16; 
       subtitlelabel.HorizontalTextAlignment = TextAlignment.Start; 
       subtitlelabel.TextColor = Color.Silver; 
       subtitlelabel.SetBinding(Label.TextProperty, "SubTitle"); 

       var arrowmarklabel = new Label(); 
       arrowmarklabel.FontSize = 20; 
       arrowmarklabel.HorizontalOptions = LayoutOptions.EndAndExpand; 
       arrowmarklabel.VerticalOptions = LayoutOptions.Center; 
       arrowmarklabel.TextColor = Color.Black; 
       arrowmarklabel.Text = ">"; 
       arrowmarklabel.FontAttributes = FontAttributes.Bold; 

       var arrowmarklabel1 = new Label(); 
       arrowmarklabel1.WidthRequest = 90; 

       var insideStackLayout = new StackLayout 
       { 
        Orientation = StackOrientation.Vertical, 
        VerticalOptions = LayoutOptions.Center, 
        Spacing = 5, 
        Children = 
        { 
         nameLabel,subtitlelabel 
        } 
       }; 

       var image = new Image(); 
       image.Scale = 0.8; 
       image.SetBinding(Image.SourceProperty, "ImageSourceUrl"); 

       return new ViewCell 
       { 
        View = new StackLayout 
        { 
         Padding = new Thickness(10,0, 5, 0), 
         Orientation = StackOrientation.Horizontal, 
         Children = { 

          new StackLayout { 
           VerticalOptions = LayoutOptions.Center, 
           Orientation=StackOrientation.Horizontal, 

           Children = { 
            image,insideStackLayout,arrowmarklabel 
           } 
          } 
         } 
        } 
       }; 
      }) 
     }; 

hier ist meine itemSelected Veranstaltung:

listView.ItemSelected += (sender, e) => 
     { 
      var data = ((ListView)sender).SelectedItem as StaticListDetails; 
      Detail = data.page;    
     }; 

Was die Änderungen erforderlich, um meinen Code sind erstes Element, um Standard in der Listenansicht ausgewählt werden.

Antwort

0
listView.SelectedItem = staticSpListDetailses?.FirstOrDefault() 
Verwandte Themen