private void SelectItem(ItemType item)
 {
     if (onSelect != null)
     {
         onSelect(item);
     }
     Navigation.PopAsync();
 }
        private void UpdateFrame(Frame frame, ItemType item)
        {
            var sheet = CharacterSheetStorage.Instance.selectedCharacter;

            if (sheet == null)
            {
                return;
            }
            var label = frame.Content as Label;

            label.Text      = item.ClassName == null ? "Total Level" : item.ClassName;
            label.TextColor = ((selected != null) && (selected.ClassName == item.ClassName)) ? Color.Green : Color.Black;
            MainPage.SetTapHandler(frame, (s, e) => SelectItem(item));
        }
        private void CreateFrame(ItemType item)
        {
            Frame frame = null;

            if (framesPool.Count <= 0)
            {
                frame = MainPage.CreateFrame(string.Empty);
            }
            else
            {
                frame = framesPool[0];
                framesPool.RemoveAt(0);
            }
            UpdateFrame(frame, item);
            Items.Children.Add(frame);
        }