/// <summary>
 /// Updates the group row view.
 /// </summary>
 /// <param name="groupPosition"></param>
 private void UpdateGroup(int groupPosition)
 {
     if (groupPosition >= 0 && groupPosition < GroupCount)
     {
         int  flatPosition = list.GetFlatListPosition(ExpandableListView.GetPackedPositionForGroup(groupPosition));
         int  first        = list.FirstVisiblePosition;
         View convert      = list.GetChildAt(flatPosition - first);
         GetGroupView(groupPosition, list.IsGroupExpanded(groupPosition), convert, list);
     }
 }
 /// <summary>
 /// Queries the packed position of the given group.
 /// </summary>
 /// <param name="group"></param>
 /// <returns></returns>
 public long GetPackedPositionFor(Group group)
 {
     return(ExpandableListView.GetPackedPositionForGroup(IndexOf(group)));
 }