public VisibleCheckBox(IChkVisibleItem item)
        {
            MyListItem listItem = (MyListItem)item;

            listItem.AddCtr(this);
            this.CheckChanged      += () => item.ItemVisible = this.Checked;
            listItem.ParentChanged += (sender, e) =>
            {
                if (listItem.IsDisposed)
                {
                    return;
                }
                if (listItem.Parent == null)
                {
                    return;
                }
                this.Checked = item.ItemVisible;
                if (listItem is FoldSubItem subItem && subItem.FoldGroupItem != null)
                {
                    return;
                }
                if (listItem.FindForm() is ShellStoreDialog.ShellStoreForm)
                {
                    return;
                }
                if (AppConfig.HideDisabledItems)
                {
                    listItem.Visible = this.Checked;
                }
            };
        }
 public VisibleCheckBox(IChkVisibleItem item)
 {
     ((MyListItem)item).AddCtr(this);
     this.MouseDown += (sender, e) =>
     {
         if (e.Button == MouseButtons.Left)
         {
             item.ItemVisible = !this.Checked;
             this.Checked     = item.ItemVisible;
         }
     };
 }
        public VisibleCheckBox(IChkVisibleItem item)
        {
            MyListItem listItem = (MyListItem)item;

            listItem.AddCtr(this);
            this.MouseDown += (sender, e) =>
            {
                if (e.Button == MouseButtons.Left)
                {
                    item.ItemVisible = !this.Checked;
                    this.Checked     = item.ItemVisible;
                }
            };
            listItem.ParentChanged += (sender, e) =>
            {
                if (listItem.IsDisposed)
                {
                    return;
                }
                if (listItem.Parent == null)
                {
                    return;
                }
                if (listItem is IFoldSubItem subItem && subItem.FoldGroupItem != null)
                {
                    return;
                }
                if (listItem.FindForm() is ShellStoreDialog.ShellStoreForm)
                {
                    return;
                }
                if (AppConfig.HideDisabledItems)
                {
                    listItem.Visible = item.ItemVisible;
                }
            };
        }