public void Initialize(List <OlapMemberInfo> infos, bool useStateIcons)
        {
            LayoutRoot.RowDefinitions.Clear();
            LayoutRoot.Children.Clear();
            if (infos != null)
            {
                int row = 0;
                foreach (OlapMemberInfo info in infos)
                {
                    LayoutRoot.RowDefinitions.Add(new RowDefinition()
                    {
                        Height = new GridLength(24)
                    });

                    MemberItemControl ctrl = null;
                    if (useStateIcons)
                    {
                        ctrl = new MemberItemControl(info.Info, MemberChoiceControl.GetIconImage(info));
                    }
                    else
                    {
                        ctrl = new MemberItemControl(info.Info);
                    }
                    ctrl.Tag = info;
                    LayoutRoot.Children.Add(ctrl);
                    Grid.SetRow(ctrl, row);
                    row++;

                    ctrl.IconClick += new EventHandler(MemberItem_IconClick);
                    ctrl.TextClick += new EventHandler(MemberItem_TextClick);
                }
            }
        }
        void MemberItem_TextClick(object sender, EventArgs e)
        {
            MemberItemControl ctrl = sender as MemberItemControl;

            if (ctrl != null)
            {
                Raise_ItemSelected(ctrl.Info.UniqueName);
            }
        }