public void AddItem(ImageBox image, T value)
        {
            image.Parent = this;
            image.Window = Window;
            var item = new PaletteBoxItem
            {
                Value    = value,
                ImageBox = image
            };

            _items.Add(item);
            IsDirty = true;
        }
        public void AddItem(ImageBox image, string text, T value)
        {
            image.Parent = this;
            image.Window = Window;
            var item = new ImageListBoxItem
            {
                Value    = value,
                Label    = new Label(Window, this, Rectangle.Empty, text, ZIndex + 1),
                ImageBox = image
            };

            _items.Add(item);
            IsDirty = true;
        }