ListView как сгруппированный в Xamarin.Forms

Я пытаюсь реализовать расширяемое представление списка в Xamarin.Forms. Поскольку встроенного элемента управления нет, я использую простое представление списка и использую его как сгруппированное. Но я не могу найти элемент управления событием Header Tap.

Есть ли такое событие касания?

Другие возможности создания расширяемого представления списка в формах?

Я пробовал код ниже с помощью GestureRecognizer, но касание не фиксируется.

lstView : представление списка с заголовком, сгруппированным.

Content = new StackLayout { 
                Children = {lstView}
            };
            var tap = new TapGestureRecognizer ();

            Content.GestureRecognizers.Add (tap);
            tap.Tapped += (object sender, EventArgs e) => 
            {
                var x = e;
            };

person superB    schedule 14.01.2016    source источник
comment
Просто прочитайте сайт (первая ссылка, которую я предоставил в своем ответе). Вам нужно создать собственный элемент управления, который реализует GestureRecognizer (найдите «StackLayoutButton» на указанном сайте   -  person Joehl    schedule 14.01.2016


Ответы (1)


Элемент группы не имеет встроенного Tap-события. Единственный способ добиться этого — создать собственный элемент управления для группового шаблона.

В этот пользовательский элемент управления вы можете добавить GestureRecognizer для событий касания. Вы также можете реализовать свойство, к которому вы можете привязаться (из вашего XAML). Я не могу дать вам пример кода, потому что я еще не пробовал (извините за это).

Но с информацией здесь вам следует быть в состоянии сделать это. Я также нашел тему на форуме Xamarin. , который описывает проблему, которую вы описываете здесь (пока без соучастия, но информация может привести вас в правильном направлении).

person Joehl    schedule 14.01.2016
comment
Да, я видел эту ссылку, но не смог реализовать. - person superB; 14.01.2016
comment
В порядке. Где проблема? Пожалуйста, обновите свой вопрос с вашей попыткой сделать это, так что, возможно, мы сможем вам помочь. - person Joehl; 14.01.2016