/// <summary> /// Overrides parent OnDrawItem method to perform custom painting /// </summary> /// <param name="pe"></param> protected override void OnDrawItem(DrawItemEventArgs pe) { pe.DrawBackground(); pe.DrawFocusRectangle(); Rectangle bounds = pe.Bounds; // Check whether the index is valid if (pe.Index >= 0 && pe.Index < base.Items.Count) { ImageListBoxItem item = (ImageListBoxItem)base.Items[pe.Index]; int iOffset = 0; // If the image list is present and the image index is set, draw the image if (imageList != null) { if (item.ImageIndex != -1 && item.ImageIndex < imageList.Images.Count) { imageList.Draw(pe.Graphics, bounds.Left, bounds.Top, item.ImageIndex); } iOffset += imageList.ImageSize.Width; } // Draw item text pe.Graphics.DrawString(item.Text, pe.Font, new SolidBrush(pe.ForeColor), bounds.Left + iOffset, bounds.Top); } base.OnDrawItem(pe); }
private int DoInsertItem(int index, ImageListBoxItem item) { item.imageList = imageList; item.itemIndex = index; base.Items.Insert(index, item); return(index); }
private void DoSetElement(int index, ImageListBoxItem value) { base.Items[index] = value; }
public int Add(ImageListBoxItem item) { return(owner.DoInsertItem(Count, item)); }
public void Insert(int index, ImageListBoxItem item) { owner.DoInsertItem(index, item); }
public void Remove(ImageListBoxItem item) { throw new NotSupportedException(); }