internal void Show(Point mainFormMousePosition, List <CountryConfig.PolicyRow> policyRows, List <string> idsDisplayedSinglePolicy, bool singlePolicyView)
        {
            try
            {
                Name                = "EMUI_SelectPolicyMenu";
                Location            = mainForm.treeList.PointToClient(mainForm.PointToScreen(mainFormMousePosition));
                HorizontalScrollbar = true;
                SelectionMode       = SelectionMode.One;
                AutoSize            = true;
                MaximumSize         = new Size(mainForm.treeList.Width, mainForm.treeList.Height);

                Leave += Disappear;
                Click += ItemSelected;
                KeyUp += HandleKeyUp;

                Items.Clear(); Content.Clear();
                foreach (CountryConfig.PolicyRow policyRow in policyRows)
                {
                    int index = Items.Add(policyRow.Name + " (" + policyRow.Comment + ")");
                    if (idsDisplayedSinglePolicy.Contains(policyRow.ID))
                    {
                        SelectedIndex = index;
                    }
                    Content.Add(index, policyRow);
                }
                if (singlePolicyView)
                {
                    Items.Add("Full Spine");
                }

                mainForm.treeList.Controls.Add(this);
                Focus();
            }
            catch {}
        }