ItemSource равен нулю, когда инициализирован MvxFragment - PullRequest
0 голосов
/ 13 марта 2020

У меня есть LinearLayout, у которого есть несколько детей. Содержимое, связанное с MvvmCross, например:

                <pfw.myparcellive.android.customcontrols.MvxClickableLinearLayout
                    android:id="@+id/postOffice_list"
                    android:orientation="vertical"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    local:MvxBind="ItemClick SelectionChangedCommand;Visible !ShowErrorMessage;"
                    local:MvxItemTemplate="@layout/list_post_office_item_layout" />

Пользовательский элемент управления создан для реализации OnItemClick для каждого дочернего элемента.

Я хочу, чтобы при инициализации MvxFragment прокручивался дочерний элемент с конкретная c позиция. Вот метод, который я использую для прокрутки:

        private void ScrollToSelectedItem()
        {
            var index = GetIndex();
            if (index > 0)
            {
                var parent = _clickableLayout.GetChildAt(index).Parent;
                parent.RequestChildFocus(_clickableLayout.GetChildAt(index), _clickableLayout.GetChildAt(index));
            }
        }

Основная проблема в том, что ItemSource имеет значение null. LinearLayout извлекается, но имеет ItemSource в null. Я должен упомянуть, что я уже пытался вызвать это поведение прокрутки, когда ViewModel объявил мне, что все элементы извлекаются из серверной части и устанавливаются в ViewModel.

...