📄 ximagelistbutton.cs
字号:
{
get
{
return this._selectedImageBackground;
}
set
{
this._selectedImageBackground = value;
}
}
public int SelectedIndex
{
get
{
return this._selectIndex;
}
set
{
this._selectIndex = value;
if (this._selectIndex != -1)
{
if ((((this.SelectedIndex + 1) * ((this.ImageSize.Width + 14) + this._splitWidth)) + this._offset) > this.ImageRect.Right)
{
this._offset = this.ImageRect.Right - ((this.SelectedIndex + 1) * ((this.ImageSize.Width + 14) + this._splitWidth));
}
if ((((this.SelectedIndex - 1) * ((this.ImageSize.Width + 14) + this._splitWidth)) + this._offset) < 0)
{
this._offset = -this.SelectedIndex * ((this.ImageSize.Width + 14) + this._splitWidth);
}
this.Refresh();
}
}
}
public System.Drawing.Size Size
{
get
{
return new System.Drawing.Size(base.Size.Width, (this.ImageSize.Height + ((int) this.Font.SizeInPoints)) + 0x19);
}
set
{
System.Drawing.Size size = new System.Drawing.Size(value.Width, (this.ImageSize.Height + ((int) this.Font.SizeInPoints)) + 0x19);
base.Size = size;
}
}
public int SplitWidth
{
get
{
return this._splitWidth;
}
set
{
if (value > 4)
{
this._splitWidth = value;
}
}
}
[Editor("System.Windows.Forms.Design.ImageCollectionEditor, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", typeof(UITypeEditor))]
public class ImageCollection : IList<XImageListButton.ImageItem>, ICollection<XImageListButton.ImageItem>, IEnumerable<XImageListButton.ImageItem>, IEnumerable
{
private readonly List<XImageListButton.ImageItem> _innerList = new List<XImageListButton.ImageItem>();
private readonly XImageListButton parent;
internal ImageCollection(XImageListButton parent)
{
this.parent = parent;
}
public void Add(XImageListButton.ImageItem item)
{
this.Insert(this.Count, item);
}
public void Add(string key, Image image)
{
XImageListButton.ImageItem item = new XImageListButton.ImageItem();
item.Key = key;
item.Image = image;
this.Add(item);
}
public void Clear()
{
this._innerList.Clear();
}
public void Insert(int index, XImageListButton.ImageItem item)
{
this._innerList.Insert(index, item);
this.SetImageSize(item.Image);
}
private void SetImageSize(Image newImage)
{
if (newImage != null)
{
int width = newImage.Width;
int height = newImage.Height;
if (width < this.parent.ImageSize.Width)
{
width = this.parent.ImageSize.Width;
}
if (height < this.parent.ImageSize.Height)
{
height = this.parent.ImageSize.Height;
}
this.parent.ImageSize = new Size(width, height);
}
}
bool ICollection<XImageListButton.ImageItem>.Contains(XImageListButton.ImageItem item)
{
return this._innerList.Contains(item);
}
void ICollection<XImageListButton.ImageItem>.CopyTo(XImageListButton.ImageItem[] array, int arrayIndex)
{
this._innerList.CopyTo(array, arrayIndex);
}
bool ICollection<XImageListButton.ImageItem>.Remove(XImageListButton.ImageItem item)
{
return this._innerList.Remove(item);
}
IEnumerator<XImageListButton.ImageItem> IEnumerable<XImageListButton.ImageItem>.GetEnumerator()
{
return this._innerList.GetEnumerator();
}
int IList<XImageListButton.ImageItem>.IndexOf(XImageListButton.ImageItem item)
{
return this._innerList.IndexOf(item);
}
void IList<XImageListButton.ImageItem>.RemoveAt(int index)
{
this._innerList.RemoveAt(index);
}
IEnumerator IEnumerable.GetEnumerator()
{
return this._innerList.GetEnumerator();
}
public int Count
{
get
{
return this._innerList.get_Count();
}
}
public XImageListButton.ImageItem this[int index]
{
get
{
return this._innerList.get_Item(index);
}
set
{
this._innerList.set_Item(index, value);
this.SetImageSize(value.Image);
}
}
bool ICollection<XImageListButton.ImageItem>.IsReadOnly
{
get
{
return false;
}
}
XImageListButton.ImageItem IList<XImageListButton.ImageItem>.this[int index]
{
get
{
return this._innerList.get_Item(index);
}
set
{
this._innerList.set_Item(index, value);
}
}
}
public class ImageItem
{
private System.Drawing.Image _image;
private object _tag;
private string key;
public System.Drawing.Image Image
{
get
{
return this._image;
}
set
{
this._image = value;
}
}
public string Key
{
get
{
return this.key;
}
set
{
this.key = value;
}
}
public object Tag
{
get
{
return this._tag;
}
set
{
this._tag = value;
}
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -