56.C ListBox控件

56.C ListBox控件摘要 ListBox 控件显示一个项列表 用户可以从中选择一个或多个项 如果项总数超过可显示的数量 则会自动向 ListBox 控件添加滚动条 MultiColumn 属性设置为 true 时 列表框将显示多个列中的项 并显示水平滚动条

欢迎大家来到IT世界,在知识的湖畔探索吧!

摘要


ListBox 控件显示一个项列表,用户可以从中选择一个或多个项。

如果项总数超过可显示的数量,则会自动向 ListBox 控件添加滚动条。 MultiColumn 属性设置为 true 时,列表框将显示多个列中的项,并显示水平滚动条。 MultiColumn 属性设置为 false 时,列表框将显示单个列中的项,并显示垂直滚动条。 ScrollAlwaysVisible 设置为 true 时,无论项目数多少,都会显示滚动条。 SelectionMode 属性确定一次可以选择多少列表项。

正文


属性

BackColor

获取或设置控件的背景色。

ColumnWidth

获取或设置多列 ListBox 中列的宽度。

Enabled

ItemHeight

获取或设置 ListBox 中项的高度。

Items

获取 ListBox 的项。

MultiColumn

获取或设置一个值,该值指示 ListBox 是否支持多列。

Name

ScrollAlwaysVisible

获取或设置一个值,该值指示是否任何时候都显示垂直滚动条。

SelectedIndex

获取或设置 ListBox 中当前选定项的从零开始的索引。

SelectedIndices

获取一个集合,该集合包含 ListBox 中所有当前选定项的从零开始的索引。

SelectedItem

获取或设置 ListBox 中的当前选定项。

SelectedItems

获取包含 ListBox 中当前选定项的集合。

SelectedValue

SelectionMode

获取或设置在 ListBox 中选择项所用的方法。

Sorted

获取或设置一个值,该值指示 ListBox 中的项是否按字母顺序排序。

Tag

Text

获取或搜索 ListBox 中当前选定项的文本。

手动界面添加Item

56.C ListBox控件

欢迎大家来到IT世界,在知识的湖畔探索吧!

56.C ListBox控件

代码添加项

56.C ListBox控件

private void btnAdd_Click(object sender, EventArgs e) { lstMain.Items.Add("Andriod"); }

欢迎大家来到IT世界,在知识的湖畔探索吧!

删除选中的选项

56.C ListBox控件

欢迎大家来到IT世界,在知识的湖畔探索吧!private void btnDeleteSelectItem_Click(object sender, EventArgs e) { if (lstMain.SelectedItems.Count > 0) { for (int i = 0; i < lstMain.SelectedItems.Count; i++) { lstMain.Items.Remove(lstMain.SelectedItems[i]); } } }

可以修改SelectionMode试一下多选时,发现会有问题,因为删除Items时,循环最大值会变化

private void btnDeleteSelectItem_Click(object sender, EventArgs e) { if (lstMain.SelectedItems.Count > 0) { int max = lstMain.SelectedItems.Count-1; for (int i = max; i >=0 ; i--) { lstMain.Items.Remove(lstMain.SelectedItems[i]); } } }

清除

56.C ListBox控件

欢迎大家来到IT世界,在知识的湖畔探索吧!private void btnClear_Click(object sender, EventArgs e) { lstMain.Items.Clear(); }

载入列表

56.C ListBox控件

internal class User { public string Name { get; set; } public Guid Id { get; set; } public string Email { get; set; } }
欢迎大家来到IT世界,在知识的湖畔探索吧!List             users = new List               (); private void InitUser() { users.Add(new User() { Id=Guid.NewGuid(), Name="张三", Email="" }); users.Add(new User() { Id = Guid.NewGuid(), Name = "李四", Email = "" }); users.Add(new User() { Id = Guid.NewGuid(), Name = "王五", Email = "" }); lstMain.DataSource = users; lstMain.DisplayMember = "Name"; }             
private void lstMain_SelectedIndexChanged(object sender, EventArgs e) { txtId.Text = ((User)lstMain.SelectedItem).Id.ToString(); txtName.Text = ((User)lstMain.SelectedItem).Name.ToString(); txtEmail.Text = ((User)lstMain.SelectedItem).Email.ToString(); }

重写ToString()

56.C ListBox控件

欢迎大家来到IT世界,在知识的湖畔探索吧!internal class ListItem { public string Name { get; set; } public string Value { get; set; } public override string ToString() { return Name.ToString(); } }

修改载入方式

private void lstMain_SelectedIndexChanged(object sender, EventArgs e) { txtId.Text = ((ListItem)lstMain.SelectedItem).Value; txtName.Text= ((ListItem)lstMain.SelectedItem).Name; } private void button1_Click(object sender, EventArgs e) { lstMain.Items.Add(new ListItem() { Name = "张三", Value = "1" }); lstMain.Items.Add(new ListItem() { Name = "李四", Value = "2" }); lstMain.Items.Add(new ListItem() { Name = "王五", Value = "3" }); }



免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/89048.html

(0)
上一篇 7小时前
下一篇 7小时前

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们YX

mu99908888

在线咨询: 微信交谈

邮件:itzsgw@126.com

工作时间:时刻准备着!

关注微信