详细解读c#ListBox控件

简介: 详细解读c#ListBox控件

   ListBox控件可以一次呈现多个项,并且语序对控件中的选项进行选择操作,ListBox类公开Items属性,它是一个集合,类型为ListBox.ObjectCollection,是ListBox的一个嵌套类,该类实现了IList接口,可以调用Add方法向列表中添加新的项。ObjectCollection类提供了一个AddRange方法,允许一次性添加多个项。

  通过设置ListBox控件的SelectionMode属性可以控制ListBox的选择行为,它是一个枚举值

枚举值 说明

None 如果设置该值,则无法选择项

One                  每次只能选择一项

MultiSimple 可以选择多项,第一次单击某项时将其选中,再次单击就可以取消选择

MultiExtended 多选,可以使用(Ctrl)和(Shift)等控制键来辅助操作

1、绘制如下窗口(白色框使用ListBox控件)

2、在ListBox添加文字

4、添加RadioButton控件(Text属性一定要一样,要不然没有办法通过RadioButton按钮的Text中获取对应的值)

5、给RadioButton添加点击共享事件

6、编辑代码

private void OnRaidoButtonCheckChange(object sender, EventArgs e)

{

if (this.listBox1 == null)

return;

RadioButton rdbutton = sender as RadioButton;

if (rdbutton.Checked)

{

string txt = rdbutton.Text;//获取RadioButton text字符

//在枚举数据类型中,调用Enum.Parse方法可以根据提供的枚举值的名字转换为枚举值

//并将转换的枚举值赋值给ListBox1.SelectionMode

listBox1.SelectionMode = (SelectionMode)Enum.Parse(typeof(SelectionMode), txt);

}//代码效果参考:http://www.ezhiqi.com/zx/art_7770.html

}

LIstBox控件有个Items属性,可以通过自己编写代码向ListBox中添加列表选项。

private void btnAddItem_Click(object sender, EventArgs e)

{

//判断TextBox中的文本是否为空

if (string.IsNullOrWhiteSpace(txtInput.Text))

{

return;

}

//添加文本之前先判断是否重复

// 摘要:

// 找到的第一项 System.Windows.Forms.ListBox 以指定字符串开头。

//

// 参数:

// s:

// 要搜索的文本。

//

// 返回结果:

// 找到的第一项的从零开始的索引返回 ListBox.NoMatches 如果不找到任何匹配项。

//

// 异常:

// T:System.ArgumentOutOfRangeException:

// 值 s 参数小于-1 或大于或等于项的计数。

if (listBox1.FindString(txtInput.Text) != ListBox.NoMatches)

{

MessageBox.Show("此项已经存在");

return;

}//代码效果参考:http://www.ezhiqi.com/bx/art_3911.html

//将文本框中文本加入到ListBox的列表项中

listBox1.Items.Add(txtInput.Text);

//清空txtInput中的文本

txtInput.Clear();

}

}

相关文章
|
8月前
|
C#
C#-ListBox多选绑定
在WPF中,ListBox的SelectedItems属性为只读,无法直接绑定多选数据。本文通过定义一个附加属性实现双向绑定,利用依赖属性和事件监听同步选中项,从而解决该问题。
304 8
|
SQL 开发框架 .NET
C#一分钟浅谈:数据绑定与数据源控件
在Web开发中,数据绑定和数据源控件是实现动态网页的关键技术。本文从基础概念入手,详细讲解数据绑定的原理及其在ASP.NET中的应用,并介绍常见数据绑定方式:手动绑定和自动绑定。接着,文章重点介绍了ASP.NET中的数据源控件,如`SqlDataSource`、`ObjectDataSource`、`XmlDataSource`和`LinqDataSource`,并通过具体示例演示如何使用`SqlDataSource`和`GridView`进行数据绑定。最后,还列举了一些常见问题及其解决办法,帮助读者更好地理解和应用这些技术。
275 4
|
C# Python
使用wxpython开发跨平台桌面应用,对wxpython控件实现类似C#扩展函数处理的探究
【10月更文挑战第30天】使用 `wxPython` 开发跨平台桌面应用时,可以通过创建辅助类来模拟 C# 扩展函数的功能。具体步骤包括:1. 创建辅助类 `WxWidgetHelpers`;2. 在该类中定义静态方法,如 `set_button_color`;3. 在应用中调用这些方法。这种方法提高了代码的可读性和可维护性,无需修改 `wxPython` 库即可为控件添加自定义功能。但需要注意显式调用方法和避免命名冲突。
188 1
|
存储 搜索推荐 C#
WPF/C#:让绘制的图形可以被选中并将信息显示在ListBox中
WPF/C#:让绘制的图形可以被选中并将信息显示在ListBox中
224 0
|
SQL 存储 Oracle
C# Web控件与数据感应之 Control 类
C# Web控件与数据感应之 Control 类
|
SQL 存储 C#
C# Web控件与数据感应之 TreeView 类
C# Web控件与数据感应之 TreeView 类
|
SQL 存储 Oracle
C# Web控件与数据感应之 CheckBoxList 类
C# Web控件与数据感应之 CheckBoxList 类
|
SQL 存储 Oracle
C# Web控件与数据感应之 ListControl 类
C# Web控件与数据感应之 ListControl 类
|
JavaScript 前端开发 C#
C# webbrowser控件设置代理IP访问网站
C# webbrowser控件设置代理IP访问网站
869 5