详细解读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();

}

}

目录
打赏
0
0
0
0
32
分享
相关文章
|
6月前
|
C#一分钟浅谈:数据绑定与数据源控件
在Web开发中,数据绑定和数据源控件是实现动态网页的关键技术。本文从基础概念入手,详细讲解数据绑定的原理及其在ASP.NET中的应用,并介绍常见数据绑定方式:手动绑定和自动绑定。接着,文章重点介绍了ASP.NET中的数据源控件,如`SqlDataSource`、`ObjectDataSource`、`XmlDataSource`和`LinqDataSource`,并通过具体示例演示如何使用`SqlDataSource`和`GridView`进行数据绑定。最后,还列举了一些常见问题及其解决办法,帮助读者更好地理解和应用这些技术。
125 4
|
8月前
|
C#
C#钉钉发起审批--单选框控件怎么添加
C#发起审批--单选框控件写法
|
5月前
|
使用wxpython开发跨平台桌面应用,对wxpython控件实现类似C#扩展函数处理的探究
【10月更文挑战第30天】使用 `wxPython` 开发跨平台桌面应用时,可以通过创建辅助类来模拟 C# 扩展函数的功能。具体步骤包括:1. 创建辅助类 `WxWidgetHelpers`;2. 在该类中定义静态方法,如 `set_button_color`;3. 在应用中调用这些方法。这种方法提高了代码的可读性和可维护性,无需修改 `wxPython` 库即可为控件添加自定义功能。但需要注意显式调用方法和避免命名冲突。
WPF/C#:让绘制的图形可以被选中并将信息显示在ListBox中
WPF/C#:让绘制的图形可以被选中并将信息显示在ListBox中
81 0
C# Web控件与数据感应之 Control 类
C# Web控件与数据感应之 Control 类
C# Web控件与数据感应之 TreeView 类
C# Web控件与数据感应之 TreeView 类
C# Web控件与数据感应之 CheckBoxList 类
C# Web控件与数据感应之 CheckBoxList 类
C# Web控件与数据感应之 ListControl 类
C# Web控件与数据感应之 ListControl 类
C# webbrowser控件设置代理IP访问网站
C# webbrowser控件设置代理IP访问网站
527 5
|
5月前
|
C# 一分钟浅谈:Code Contracts 与契约编程
【10月更文挑战第26天】本文介绍了 C# 中的 Code Contracts,这是一个强大的工具,用于通过契约编程增强代码的健壮性和可维护性。文章从基本概念入手,详细讲解了前置条件、后置条件和对象不变量的使用方法,并通过具体代码示例进行了说明。同时,文章还探讨了常见的问题和易错点,如忘记启用静态检查、过度依赖契约和性能影响,并提供了相应的解决建议。希望读者能通过本文更好地理解和应用 Code Contracts。
95 3
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等