Accordion.Forms.AccordionControl.Add C# (CSharp) Метод

Add() публичный Метод

Add the specified cell and view.
public Add ( View cell, View view ) : void
cell Xamarin.Forms.View cell.
view Xamarin.Forms.View View.
Результат void
        public void Add(View cell, View view)
        {
            if (cell == null)
                throw new ArgumentNullException(nameof(cell));

            if (view == null)
                throw new ArgumentNullException(nameof(view));

            var entry = new AccordionEntry()
            {
                Cell = cell,
                View = new ScrollView()
                {
                    Content = view
                },
                OriginalSize = new Size(view.WidthRequest, view.HeightRequest)
            };

            m_entries.Add(entry);

            m_cellStackLayout.Children.Add(entry.Cell);
            m_cellStackLayout.Children.Add(entry.View);

            var cellIndex = m_entries.Count - 1;

            var tapGestureRecognizer = new TapGestureRecognizer();

            if (CellTouched == null)
                tapGestureRecognizer.Tapped += (object sender, EventArgs e) => OnCellTouchUpInside(cellIndex);
            else
                tapGestureRecognizer.Tapped += (object sender, EventArgs e) => CellTouched(cellIndex);

            cell.GestureRecognizers.Add(tapGestureRecognizer);
        }

Usage Example

Пример #1
0
        protected override void OnAppearing()
        {
            IsBusy = true;
            base.OnAppearing();
            NavigationPage.SetHasNavigationBar(this, false);

            m_accordionView = new AccordionControl(m_header);
            m_accordionView.BackgroundColor = Color.FromRgb(52, 52, 52);
            m_accordionView.DefaultButtonBackgroundColor = Color.FromRgb(52, 52, 52);
            m_accordionView.DefaultButtonTextColor       = Color.White;

            foreach (SampleInnerView item in m_innerViews)
            {
                Grid cell = CreateCell();
                m_accordionView.Add(cell, item);
            }

            m_accordionView.CloseAllEntries();

            Content = m_accordionView;
            IsBusy  = false;
        }
All Usage Examples Of Accordion.Forms.AccordionControl::Add