Наступаем на грабли IDropInListItemRenderer

Иногда бывает необходимость получить доступ из рендерера к листу, в котором этот рендерер находится. Для этого необходимо заиплементить интерфейс IDropInListItemRenderer и затем взять поле owner у полученной на руки BaseListData. Это все будет прекрасно работать до тех пор, пока лист не окажется пустым:

        if (item is IDropInListItemRenderer)
        {
            if (data != null)
                IDropInListItemRenderer(item).listData = makeListData(data, itemToUID(wrappedData), 0);
            else
                IDropInListItemRenderer(item).listData = null;
        }

Поэтому использовать интерфейс IDropInListItemRenderer необходимо с осторожностью, либо передавать ссылку на лист через конструктор.

Advertisements

, ,

  1. Оставить комментарий

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

%d такие блоггеры, как: