MonoTouch.Dialog — группа RootElement имеет значение null или не является RadioGroup

Я работаю с Monotouch.Dialog и сталкиваюсь с этой ошибкой:

The RootElement's Group is null or is not a RadioGroup

Код, с которым я работаю, выглядит следующим образом, я добавил комментарии, сообщающие вам о состоянии переменных:

        var groupSortChoices = new RadioGroup("S", Extensions.GetValues<PeopleDirectoryGroupSortEnum>().IndexOfItem (i => i.Element == Extensions.GetValue<PeopleDirectoryGroupSortEnum>(Options.GroupAndSort)).Value);
// new RadioGroup("S", 0)
        var nameDisplayChoices = new RadioGroup("N", Extensions.GetValues<PeopleDirectoryNameDisplayEnum>().IndexOfItem (i => i.Element == Extensions.GetValue<PeopleDirectoryNameDisplayEnum>(Options.NameDisplay)).Value);
// new RadioGroup("N", 0)

        var gsElems = Extensions.GetValues<PeopleDirectoryGroupSortEnum>()
            .Select(e => new RadioElement(e, "S"))
            .ToArray();
// String[4] array of this enum's values
        var ndElems = Extensions.GetValues<PeopleDirectoryNameDisplayEnum>()
            .Select(e => new RadioElement(e, "N"))
            .ToArray();
// String[2] array of this enum's values

        groupSortElement = new RootElement("Grouping and Sorting", groupSortChoices)
        {
            new Section("Grouping and Sorting")
            {
                gsElems
            },
        };

        nameDisplayElement = new RootElement("Name Display", nameDisplayChoices)
        {
            new Section("Name Display")
            {
                ndElems
            }
        };

        var root = new RootElement("Directory Options")
        {
            groupSortElement,
            nameDisplayElement
        };

        this.Root = root;

Я разбил этот код, чтобы попытаться отладить его. Ошибка определенно исходит от groupSortElement и nameDisplayElement. Я попытался инициализировать свои группы без использования «S» и «N» и все равно получаю ту же ошибку. Я делал это несколько раз раньше и не могу понять, что я делаю неправильно. Есть идеи? Две RadioGroups не являются нулевыми, и если я закомментирую groupSortElement и nameDisplayElement, появится пустое представление, говорящее мне, что это как-то связано с этими элементами.


person Derreck Dean    schedule 12.04.2012    source источник


Ответы (1)


Я понял. Я пытался добавить RootElements непосредственно в RootElement, а не в раздел, содержащийся в RootElement.

person Derreck Dean    schedule 17.04.2012