摘要:
关于ListBoxListBox是WinForm中的 列表 控件,它提供了一个项目列表(一组数据项),用户可以选择一个或者多个条目,当列表项目过多时,ListBox会自动添加滚动条,使用户可以滚动查阅所有选项。ListBox可以预先设定列表内容,也可以绑定其他控件或数据库,自动更新条目,把数据逐一显示出来。常用属性说明Items指列表中所有的条目集合,是一个数组集合。可以通过该属性,对列表进行增添、移除或获取列表内容MultiColumn用来设置或获取一个值(bool值),表示是否允许多列显示,
关于ListBox
ListBox是WinForm中的 列表 控件,它提供了一个项目列表(一组数据项),用户可以选择一个或者多个条目,当列表项目过多时,ListBox会自动添加滚动条,使用户可以滚动查阅所有选项。ListBox可以预先设定列表内容,也可以绑定其他控件或数据库,自动更新条目,把数据逐一显示出来。
常用属性说明
Items指列表中所有的条目集合,是一个数组集合。可以通过该属性,对列表进行增添、移除或获取列表内容
MultiColumn用来设置或获取一个值(bool值),表示是否允许多列显示,true表示多列,false表示单列,默认为false。
CoumnWidth用来获取列表当前列的宽度或设置列表当前列的宽度
SelectionMode设置列表条目的选择方法。
SelectionMode.None 表示不允许选中
SelectionMode.One 表示只允许用户选择一项
SelectionMode.MultiExtended 表示允许选择多项,但选中的条目必定相连(相邻)
SelectionMode.MultiSimple 表示允许选择多项,可以任意选中多个条目。
SelectedIndex*获取选中项的索引
未选中任何项时,返回值为 1
单选时,属性值即为选中项的索引
多选时,表示第一项选定项的索引,亦可使用SelectedIndex[i]获取其它选中项索引,亦可让某项变成选中状态。i 为选中项从0开始的序号。
SelectedIndeces用来获取选中项从0开始的索引的集合,一般只用于多项。与SelectedIndex相似,但SelectedIndeces只有获取索引的能力。
SelectedItem获取列表当前选中项。注意,获取到的是列表选中项的文本内容,而SelectedIndex和SelectedIndeces获取的只是选中项索引(int)。
SelectedItems获取选中项的集合,使用SelectedItems[i]来获取选中项的文本内容,i为选中项集合索引。
SelectedItems和SelectedIndex相似,但一个是获取文本字段,一个是获取索引。
Sorted用来设置或获取列表是否按字母排序(bool)。
Text获取或搜索列表控件当前选定项的文本。
ItemsCount用来获取当前列表条目的 数目。
双击显示图片:
using System;
using System.Drawing;
using System.IO;
using System.Windows.Forms;
namespace ListBox控件
{
public partial class Form1 : Form
{
string path = @".\";//路径
string[] filePath;//用于保存图片路径数组
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
FolderBrowserDialog fbd = new FolderBrowserDialog();//选择文件夹
if (fbd.ShowDialog() != DialogResult.OK)//判断是否点击 OK 按钮
{
MessageBox.Show("请选择要打开的文件夹", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);//提示
return;
}
else
{
path = fbd.SelectedPath;//路径
}
txtPath.Text = path;//文本框
filePath = Directory.GetFiles(path,"*.jpg");//文件夹内的文件名(仅筛选 jpg 格式)
foreach (var p in filePath)//遍历
{
listBox1.Items.Add(Path.GetFileName(p));//加入列表框中
}
}
private void listBox1_DoubleClick(object sender, EventArgs e)//列表框 双击事件
{
pictureBox1.Image = Image.FromFile(filePath[listBox1.SelectedIndex]);//图片框显示。
}
}
}
输出结果: