如何将LIst《》中的内容放进List控件

机房合作终于结束了,经过一系列验收,结果还算不错,其中有一些难啃的点,其中就有一条是如何把你传过来的list<>中的内容根据需要选择性的放进List这个控件呢,今天小编带领大家走进这个世界,领略她的神奇。

list<>泛型是什么

List类是 ArrayList 类的泛型等效类。该类使用大小可按需动态增加的数组实现 IList 泛型接口。

泛型的好处: 它为使用c#语言编写面向对象程序增加了极大的效力和灵活性。不会强行对值类型进行装箱和拆箱,或对引用类型进行向下强制类型转换,所以性能得到提高。
我们在返回信息的时候犹豫要顾及面向对象,不能直接返回dataTable、或DataSet类型的数据,我们就要想办法把数据存放在List中,具体如何实现请观看文章`

这里是引用
https://blog.csdn.net/Aran_WDX/article/details/82913911

List控件又是什么

ListBox控件又称列表框,它在工具箱中的图标为,它显示一个项目列表供用户选择。

在列表框中,用户一次可以选择一项,也可以选择多项。
也就是,列表控件可以实现DataGridView的功能,将我们想要的数据显示出来,并且外观还要远远超过DataGridView,可以根据我们的需要建立我们需要的空间,它有一些常用的属性这里分享给大家

  1. Items属性: 用于存放列表框中的列表项,是一个集合。通过该属性,可以添加列表项、移除列表项和获得列表项的数目。

.MultiColumn 属性:用来获取或设置一个值,该值指示ListBox是否支持多列。

——  值为 true 时表示支持多列,

——  值为false 时不支持多列。

——  当使用多列模式时,可以使控件得以显示更多可见项。

ColumnWidth属性:用来获取或设置多列 ListBox控件中列的宽度。

SelectionMode属性:用来获取或设置在ListBox控件中选择列表项的方法。

——  当 SelectionMode属性设置为SelectionMode.MultiExtended 时,按下 Shift
键的同时单击鼠标或者同时按 Shift键和箭头键之一(上箭头键、下箭头键、左箭头键和右箭头键),会将选定内容从前一选定项扩展到当前项。按
Ctrl键的同时单击鼠标将选择或撤销选择列表中的某项;

——  当该属性设置为 SelectionMode.MultiSimple 时,鼠标单击或按空格键将选择或撤销选择列表中的某项;

——  该属性的默认值为SelectionMode.One,则只能选择一项。

SelectedIndex属性:用来获取或设置ListBox控件中当前选定项的从零开始的索引。

——  如果未选定任何项,则返回值为1。对于只能选择一项的ListBox控件,可使用此属性确定ListBox中选定的项的索引。

——如果ListBox 控件的 SelectionMode 属性设置为 SelectionMode.MultiSimple
或SelectionMode.MultiExtended,并在该列表中选定多个项,此时应用SelectedIndices来获取选定项的索引。

SelectedIndices。该属性用来获取一个集合,该集合包含 ListBox 控件中所有选定项的从零开始的索引。

SelectedItem属性:获取或设置ListBox中的当前选定项。

SelectedItems属性:获取ListBox控件中选定项的集合,通常在ListBox控件的SelectionMode属性值设置为SelectionMode.MultiSimple或SelectionMode.MultiExtended(它指示多重选择ListBox)时使用。

Sorted属性:获取或设置一个值,该值指示ListBox控件中的列表项是否按字母顺序排序。

——  如果列表项按字母排序,该属性值为true;

——  如果列表项不按字母排序,该属性值为false。

——  默认值为false。在向已排序的ListBox控件中添加项时,这些项会移动到排序列表中适当的位置。

Text 属性:该属性用来获取或搜索 ListBox控件中当前选定项的文本。

——  当把此属性值设置为字符串值时,ListBox控件将在列表内搜索与指定文本匹配的项并选择该项。

——  若在列表中选择了一项或多项,该属性将返回第一个选定项的文本。

ItemsCount属性:该属性用来返回列表项的数目。

例如

我们需要通过选择一个流水单号来获取账单的信息,怎么实现呢?
首先:我们需要将符合条件的流水单号依次添加进list
其次:通过选择将我们所选的流水单号的信息查询并加入到text中

难点:

如何将list<>中的流水单号放进去呢?
我们知道我们在list<>中会有很多条数据,每一条数据都是list<>的一个子集,我们首先需要先拿到我们的的每一条数据,其次将每一次拿到的数据的流水单号逐条添加进list控件,这就用到了我们所学的算法的思想,遍历+次序执行

 for (int i = 0; i < listgoods.Count; i++)
                    {
                        //将获得的商品服务请求,加载到控件中
                        listServer.Clear();
                        ListViewItem data = new ListViewItem();
                        foreach (var item in listgoods)//遍历我们的list<>
                        {
                            data = new ListViewItem(item.SerialNum.ToString());
                            this.listServer.Items.Add(data);

                        }

希望这些分享可以给大家带来收获,也希望大家多多指正。
`

你可能感兴趣的:(总结)