Csharp/C Sharp by API/System.Windows.Forms/ImageList
Содержание
ImageList.ColorDepth
using System;
using System.Collections.Generic;
using System.ruponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
public class Form1 : Form
{
private System.Windows.Forms.Button cmdFillImageList;
private System.Windows.Forms.Button cmdPaintImages;
private System.Windows.Forms.ImageList iconImages;
public Form1() {
InitializeComponent();
}
private void cmdFillImageList_Click(object sender, EventArgs e)
{
iconImages.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit;
iconImages.ImageSize = new System.Drawing.Size(16, 16);
string[] iconFiles = Directory.GetFiles(Application.StartupPath, "*.ico");
foreach (string iconFile in iconFiles)
{
Icon newIcon = new Icon(iconFile);
iconImages.Images.Add(newIcon);
}
}
private void cmdPaintImages_Click(object sender, EventArgs e)
{
Graphics g = this.CreateGraphics();
for (int i = 0; i < iconImages.Images.Count; i++)
{
iconImages.Draw(g, 30 + i * 30, 30, i);
}
g.Dispose();
}
private void InitializeComponent()
{
this.cmdFillImageList = new System.Windows.Forms.Button();
this.cmdPaintImages = new System.Windows.Forms.Button();
this.iconImages = new System.Windows.Forms.ImageList(new System.ruponentModel.Container());
this.SuspendLayout();
//
// cmdFillImageList
//
this.cmdFillImageList.Location = new System.Drawing.Point(29, 217);
this.cmdFillImageList.Name = "cmdFillImageList";
this.cmdFillImageList.Size = new System.Drawing.Size(118, 23);
this.cmdFillImageList.TabIndex = 0;
this.cmdFillImageList.Text = "Fill Image List";
this.cmdFillImageList.UseVisualStyleBackColor = true;
this.cmdFillImageList.Click += new System.EventHandler(this.cmdFillImageList_Click);
//
// cmdPaintImages
//
this.cmdPaintImages.Location = new System.Drawing.Point(153, 217);
this.cmdPaintImages.Name = "cmdPaintImages";
this.cmdPaintImages.Size = new System.Drawing.Size(112, 23);
this.cmdPaintImages.TabIndex = 1;
this.cmdPaintImages.Text = "Paint Images";
this.cmdPaintImages.UseVisualStyleBackColor = true;
this.cmdPaintImages.Click += new System.EventHandler(this.cmdPaintImages_Click);
//
// iconImages
//
this.iconImages.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit;
this.iconImages.ImageSize = new System.Drawing.Size(16, 16);
this.iconImages.TransparentColor = System.Drawing.Color.Transparent;
//
// ImageListTest
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(292, 266);
this.Controls.Add(this.cmdPaintImages);
this.Controls.Add(this.cmdFillImageList);
this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.Name = "ImageListTest";
this.Text = "ImageListTest";
this.ResumeLayout(false);
}
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.Run(new Form1());
}
}
ImageList.Images
using System;
using System.Collections.Generic;
using System.ruponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
public class Form1 : Form
{
private System.Windows.Forms.ListView browserListView;
private System.Windows.Forms.Label currentLabel;
private System.Windows.Forms.Label displayLabel;
private System.Windows.Forms.ImageList fileFolder;
string currentDirectory = Directory.GetCurrentDirectory();
public Form1() {
InitializeComponent();
Image folderImage = Image.FromFile("winter.jpg" );
Image fileImage = Image.FromFile("winter.jpg" );
fileFolder.Images.Add( folderImage );
fileFolder.Images.Add( fileImage );
LoadFilesInDirectory( currentDirectory );
displayLabel.Text = currentDirectory;
}
private void browserListView_Click( object sender, EventArgs e )
{
if ( browserListView.SelectedItems.Count != 0 )
{
if ( browserListView.Items[0].Selected )
{
DirectoryInfo directoryObject = new DirectoryInfo( currentDirectory );
if ( directoryObject.Parent != null )
LoadFilesInDirectory( directoryObject.Parent.FullName );
}else {
string chosen = browserListView.SelectedItems[ 0 ].Text;
if ( Directory.Exists( currentDirectory + @"\" + chosen ) )
{
if ( currentDirectory == @"C:\" )
LoadFilesInDirectory( currentDirectory + chosen );
else
LoadFilesInDirectory(currentDirectory + @"\" + chosen );
}
}
displayLabel.Text = currentDirectory;
}
}
public void LoadFilesInDirectory( string currentDirectoryValue )
{
try
{
browserListView.Items.Clear();
browserListView.Items.Add( "Go Up One Level" );
currentDirectory = currentDirectoryValue;
DirectoryInfo newCurrentDirectory = new DirectoryInfo( currentDirectory );
DirectoryInfo[] directoryArray = newCurrentDirectory.GetDirectories();
FileInfo[] fileArray = newCurrentDirectory.GetFiles();
foreach ( DirectoryInfo dir in directoryArray )
{
ListViewItem newDirectoryItem = browserListView.Items.Add( dir.Name );
newDirectoryItem.ImageIndex = 0;
}
foreach ( FileInfo file in fileArray )
{
ListViewItem newFileItem = browserListView.Items.Add( file.Name );
newFileItem.ImageIndex = 1;
}
} catch ( UnauthorizedAccessException ) {
Console.WriteLine( "Unauthorized Access Exception");
}
}
private void InitializeComponent()
{
this.browserListView = new System.Windows.Forms.ListView();
this.fileFolder = new System.Windows.Forms.ImageList(new System.ruponentModel.Container());
this.currentLabel = new System.Windows.Forms.Label();
this.displayLabel = new System.Windows.Forms.Label();
this.SuspendLayout();
//
// browserListView
//
this.browserListView.Location = new System.Drawing.Point(12, 60);
this.browserListView.Name = "browserListView";
this.browserListView.Size = new System.Drawing.Size(456, 197);
this.browserListView.SmallImageList = this.fileFolder;
this.browserListView.TabIndex = 0;
this.browserListView.View = System.Windows.Forms.View.List;
this.browserListView.Click += new System.EventHandler(this.browserListView_Click);
//
// fileFolder
//
this.fileFolder.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit;
this.fileFolder.ImageSize = new System.Drawing.Size(16, 16);
this.fileFolder.TransparentColor = System.Drawing.Color.Transparent;
//
// currentLabel
//
this.currentLabel.AutoSize = true;
this.currentLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.currentLabel.Location = new System.Drawing.Point(10, 19);
this.currentLabel.Name = "currentLabel";
this.currentLabel.Size = new System.Drawing.Size(122, 20);
this.currentLabel.TabIndex = 1;
this.currentLabel.Text = "Now in Directory:";
//
// displayLabel
//
this.displayLabel.AutoSize = true;
this.displayLabel.Location = new System.Drawing.Point(138, 19);
this.displayLabel.Name = "displayLabel";
this.displayLabel.Size = new System.Drawing.Size(0, 0);
this.displayLabel.TabIndex = 2;
//
// ListViewTestForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(480, 270);
this.Controls.Add(this.displayLabel);
this.Controls.Add(this.currentLabel);
this.Controls.Add(this.browserListView);
this.Name = "ListViewTestForm";
this.Text = "ListViewTest";
this.ResumeLayout(false);
this.PerformLayout();
}
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.Run(new Form1());
}
}
ImageList.Images.AddStrip
using System;
using System.Drawing;
using System.Windows.Forms;
class SimpleToolBar: Form
{
public static void Main()
{
Application.Run(new SimpleToolBar());
}
public SimpleToolBar()
{
Menu = new MainMenu();
Menu.MenuItems.Add("File");
Menu.MenuItems.Add("Edit");
Menu.MenuItems.Add("View");
Menu.MenuItems.Add("Help");
Bitmap bm = new Bitmap(GetType(),"SimpleToolBar.bmp");
ImageList imglst = new ImageList();
imglst.Images.AddStrip(bm);
imglst.TransparentColor = Color.Cyan;
ToolBar tbar = new ToolBar();
tbar.Parent = this;
tbar.ImageList = imglst;
tbar.ShowToolTips = true;
string[] astr = {"New", "Open", "Save", "Print", "Cut", "Copy", "Paste" };
for (int i = 0; i < 7; i++)
{
ToolBarButton tbarbtn = new ToolBarButton();
tbarbtn.ImageIndex = i;
tbarbtn.ToolTipText = astr[i];
tbar.Buttons.Add(tbarbtn);
}
}
}
ImageList.ImageSize
using System;
using System.Collections.Generic;
using System.ruponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
public class Form1 : Form
{
private System.Windows.Forms.Button cmdFillImageList;
private System.Windows.Forms.Button cmdPaintImages;
private System.Windows.Forms.ImageList iconImages;
public Form1() {
InitializeComponent();
}
private void cmdFillImageList_Click(object sender, EventArgs e)
{
iconImages.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit;
iconImages.ImageSize = new System.Drawing.Size(16, 16);
string[] iconFiles = Directory.GetFiles(Application.StartupPath, "*.ico");
foreach (string iconFile in iconFiles)
{
Icon newIcon = new Icon(iconFile);
iconImages.Images.Add(newIcon);
}
}
private void cmdPaintImages_Click(object sender, EventArgs e)
{
Graphics g = this.CreateGraphics();
for (int i = 0; i < iconImages.Images.Count; i++)
{
iconImages.Draw(g, 30 + i * 30, 30, i);
}
g.Dispose();
}
private void InitializeComponent()
{
this.cmdFillImageList = new System.Windows.Forms.Button();
this.cmdPaintImages = new System.Windows.Forms.Button();
this.iconImages = new System.Windows.Forms.ImageList(new System.ruponentModel.Container());
this.SuspendLayout();
//
// cmdFillImageList
//
this.cmdFillImageList.Location = new System.Drawing.Point(29, 217);
this.cmdFillImageList.Name = "cmdFillImageList";
this.cmdFillImageList.Size = new System.Drawing.Size(118, 23);
this.cmdFillImageList.TabIndex = 0;
this.cmdFillImageList.Text = "Fill Image List";
this.cmdFillImageList.UseVisualStyleBackColor = true;
this.cmdFillImageList.Click += new System.EventHandler(this.cmdFillImageList_Click);
//
// cmdPaintImages
//
this.cmdPaintImages.Location = new System.Drawing.Point(153, 217);
this.cmdPaintImages.Name = "cmdPaintImages";
this.cmdPaintImages.Size = new System.Drawing.Size(112, 23);
this.cmdPaintImages.TabIndex = 1;
this.cmdPaintImages.Text = "Paint Images";
this.cmdPaintImages.UseVisualStyleBackColor = true;
this.cmdPaintImages.Click += new System.EventHandler(this.cmdPaintImages_Click);
//
// iconImages
//
this.iconImages.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit;
this.iconImages.ImageSize = new System.Drawing.Size(16, 16);
this.iconImages.TransparentColor = System.Drawing.Color.Transparent;
//
// ImageListTest
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(292, 266);
this.Controls.Add(this.cmdPaintImages);
this.Controls.Add(this.cmdFillImageList);
this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.Name = "ImageListTest";
this.Text = "ImageListTest";
this.ResumeLayout(false);
}
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.Run(new Form1());
}
}
ImageList.TransparentColor
using System;
using System.Drawing;
using System.Collections;
using System.ruponentModel;
using System.Windows.Forms;
using System.Data;
public class ImageListCreateAndAddToToolBar : System.Windows.Forms.Form
{
private ImageList toolBarIcons;
private ToolBarButton tbExitButton;
private ToolBarButton tbSaveButton;
private ToolBar toolBar;
private System.ruponentModel.Container components = null;
public ImageListCreateAndAddToToolBar()
{
this.ruponents = new System.ruponentModel.Container();
this.Size = new System.Drawing.Size(300,300);
toolBar = new ToolBar();
toolBarIcons = new ImageList();
tbSaveButton = new ToolBarButton();
tbExitButton = new ToolBarButton();
tbSaveButton.ImageIndex = 0;
tbExitButton.ImageIndex = 1;
toolBar.ImageList = toolBarIcons;
toolBar.Size = new System.Drawing.Size(272, 28);
toolBar.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
toolBar.ShowToolTips = true;
toolBar.Buttons.AddRange(new ToolBarButton[] {tbSaveButton, tbExitButton});
toolBar.ButtonClick += new ToolBarButtonClickEventHandler(ToolBar_Clicked);
toolBarIcons.ImageSize = new System.Drawing.Size(32, 32);
toolBarIcons.Images.Add(new Icon("filesave.ico"));
toolBarIcons.Images.Add(new Icon("fileexit.ico"));
toolBarIcons.ColorDepth = ColorDepth.Depth16Bit;
toolBarIcons.TransparentColor = System.Drawing.Color.Transparent;
this.Controls.Add(toolBar);
}
[STAThread]
static void Main()
{
Application.Run(new ImageListCreateAndAddToToolBar());
}
private void ToolBar_Clicked(object sender, ToolBarButtonClickEventArgs e)
{
MessageBox.Show(e.Button.ToolTipText);
}
}