public RscFileTypesV10()
        {
            InitializeComponent();

            m_AppFrame = new RscAppFrame("Ressive.Hu", "File Types 1.0", "Images/IcoSm001_FileTypes.jpg"
                                         , this, AppTitleBar, AppStatusBar);
            // ///////////////
            m_AppFrame.OnNext  += new Ressive.FrameWork.RscAppFrame.OnNext_EventHandler(m_AppFrame_OnNext);
            m_AppFrame.OnExit  += new Ressive.FrameWork.RscAppFrame.OnExit_EventHandler(m_AppFrame_OnExit);
            m_AppFrame.OnTimer += new Ressive.FrameWork.RscAppFrame.OnTimer_EventHandler(m_AppFrame_OnTimer);

            ToolBarPanel.Background = new SolidColorBrush(m_AppFrame.Theme.ThemeColors.ToolBarLightBack);

            m_btnExpandAll = new RscIconButton(ToolBarPanel, Grid.ColumnProperty, 0, 50, 50, Rsc.Visible);
            m_btnExpandAll.Image.Source = m_AppFrame.Theme.GetImage("Images/Btn001_TreeExpand.jpg");
            m_btnExpandAll.Click       += new System.Windows.RoutedEventHandler(m_btnExpandAll_Click);

            m_btnCollapseAll = new RscIconButton(ToolBarPanel, Grid.ColumnProperty, 1, 50, 50, Rsc.Visible);
            m_btnCollapseAll.Image.Source = m_AppFrame.Theme.GetImage("Images/Btn001_TreeCollapse.jpg");
            m_btnCollapseAll.Click       += new System.Windows.RoutedEventHandler(m_btnCollapseAll_Click);

            m_AppFrame.ShowButtonNext(false);

            m_aTI = new RscTreeLbItemList(lbTree, m_AppFrame.Theme, "Images/Btn001_TreeExpand.jpg", "Images/Btn001_TreeCollapse.jpg");

            ContentPanel.SizeChanged += new System.Windows.SizeChangedEventHandler(ContentPanel_SizeChanged);

            // //
            //

            StringArrayHelper sah = new StringArrayHelper();

            string [] asKeys = RscRegistry.GetKeys(HKEY.HKEY_CLASSES_ROOT, "");
            for (int i = 0; i < asKeys.Length; i++)
            {
                string sExt = asKeys[i];
                if (sExt.IndexOf("()") != 0)
                {
                    continue;
                }
                sExt = sExt.Substring(2);
                if (sExt.Length == 0)
                {
                    continue;
                }

                string sGroup = RscRegistry.ReadString(HKEY.HKEY_CLASSES_ROOT,
                                                       "()" + sExt, "Group", "");

                if (sGroup.Length == 0)
                {
                    continue;
                }

                sah.Add(sGroup);
            }

            for (int i = 0; i < sah.m_a.Count; i++)
            {
                TreeLbItem ti = new TreeLbItem(m_aTI, null, "Group", sah.m_a[i]);
                m_aTI.Add(ti);
            }

            //
            // //
        }
            override public void Expand()
            {
                if (ContainerID.Length == 0)
                {
                    return;
                }

                //VERY SLOW!!!
                //m_aTI.PreRefresh();

                PreInserts();

                switch (ContainerID)
                {
                case "ViewerApp":
                {
                    string sGroup = Parent.Title;

                    string     sValue;
                    TreeLbItem ti;

                    sValue = RscRegistry.ReadString(HKEY.HKEY_CLASSES_ROOT,
                                                    "Groups\\" + sGroup, "ViewerAppPageName", "<none>");
                    ti = new TreeLbItem(Holder, this, "", "Page Name", sValue);
                    Insert(ti);

                    sValue = RscRegistry.ReadString(HKEY.HKEY_CLASSES_ROOT,
                                                    "Groups\\" + sGroup, "ViewerAppAssyName", "<none>");
                    ti = new TreeLbItem(Holder, this, "", "Assy Name", sValue);
                    Insert(ti);

                    sValue = "No";
                    if (RscRegistry.ReadBool(HKEY.HKEY_CLASSES_ROOT,
                                             "Groups\\" + sGroup, "ViewerAppAllowList", false))
                    {
                        sValue = "Yes";
                    }
                    ti = new TreeLbItem(Holder, this, "", "Allow List", sValue);
                    Insert(ti);

                    sValue = "No";
                    if (RscRegistry.ReadBool(HKEY.HKEY_CLASSES_ROOT,
                                             "Groups\\" + sGroup, "ViewerAppSendContent", false))
                    {
                        sValue = "Yes";
                    }
                    ti = new TreeLbItem(Holder, this, "", "Send Content", sValue);
                    Insert(ti);

                    break;
                }

                case "Extensions":
                {
                    StringArrayHelper sah    = new StringArrayHelper();
                    string []         asKeys = RscRegistry.GetKeys(HKEY.HKEY_CLASSES_ROOT, "");
                    for (int i = 0; i < asKeys.Length; i++)
                    {
                        string sExt = asKeys[i];
                        if (sExt.IndexOf("()") != 0)
                        {
                            continue;
                        }
                        sExt = sExt.Substring(2);
                        if (sExt.Length == 0)
                        {
                            continue;
                        }

                        string sGroup = RscRegistry.ReadString(HKEY.HKEY_CLASSES_ROOT,
                                                               "()" + sExt, "Group", "");

                        if (sGroup.Length == 0)
                        {
                            continue;
                        }

                        if (sGroup.ToUpper().CompareTo(Parent.Title.ToUpper()) != 0)
                        {
                            continue;
                        }

                        sah.Add(sExt);
                    }

                    for (int i = 0; i < sah.m_a.Count; i++)
                    {
                        TreeLbItem ti = new TreeLbItem(Holder, this, "", "", sah.m_a[i]);
                        Insert(ti);
                    }

                    break;
                }

                case "Group":
                {
                    TreeLbItem ti = new TreeLbItem(Holder, this, "Extensions", "File Extension");
                    Insert(ti);

                    ti = new TreeLbItem(Holder, this, "ViewerApp", "Viewer App");
                    Insert(ti);

                    break;
                }
                }

                base.Expand();
            }