我正在使用C#开发聊天程序,并使用ListBox管理昵称列表。但是,客户有昵称并注明(在线,离开)
因此,为了管理状态,我想将图像(在线-绿色圆圈,离开-红色圆圈)添加到ListBox(这是我的想法)
如何将图像添加到ListBox?请帮我。
谢谢。
最佳答案
您不能在ListBox中轻松地做到这一点。使用“图形”绘制它们根本不容易。我建议改用DataGridView
或ListView
控件。
结果:
DataGridView :有一个名为DataGridViewImageColumn
的ColumnType,可用于显示状态图标。
public void FillDataGridView()
{
//images
var greenImg = Resources.green;
var redImg = Resources.red;
var yellowImg = Resources.yellow;
dataGridView1.Rows.Add(new object[] {"Vland", greenImg});
dataGridView1.Rows.Add(new object[] {"John", yellowImg });
dataGridView1.Rows.Add(new object[] {"Paul", greenImg});
dataGridView1.Rows.Add(new object[] {"George", redImg});
dataGridView1.Rows.Add(new object[] {"Ringo", redImg });
}
How to: Display Images in Cells of the Windows Forms DataGridView Control
ListView:可以添加由文本+图像组成的项目。如果使用ListView,则需要向表单中添加一个imageList组件(其中包含图像),并调用它们的
imageKey
值(如示例中所示)public void fillListView()
{
listView1.SmallImageList = imageList1;
listView1.Items.Add("BombPenguin", "green");
listView1.Items.Add("Vland", "yellow");
listView1.Items.Add("John", "red");
listView1.Items.Add("Paul", "green");
listView1.Items.Add("Ringo", "red");
}
How to: Display Icons for the Windows Forms ListView Control
关于c# - 如何将图像添加到System.Windows.Forms.ListBox?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20821143/