机房合作终于结束了,经过一系列验收,结果还算不错,其中有一些难啃的点,其中就有一条是如何把你传过来的list<>中的内容根据需要选择性的放进List这个控件呢,今天小编带领大家走进这个世界,领略她的神奇。
List类是 ArrayList 类的泛型等效类。该类使用大小可按需动态增加的数组实现 IList 泛型接口。
泛型的好处: 它为使用c#语言编写面向对象程序增加了极大的效力和灵活性。不会强行对值类型进行装箱和拆箱,或对引用类型进行向下强制类型转换,所以性能得到提高。
我们在返回信息的时候犹豫要顾及面向对象,不能直接返回dataTable、或DataSet类型的数据,我们就要想办法把数据存放在List中,具体如何实现请观看文章`
这里是引用
https://blog.csdn.net/Aran_WDX/article/details/82913911
ListBox控件又称列表框,它在工具箱中的图标为,它显示一个项目列表供用户选择。
在列表框中,用户一次可以选择一项,也可以选择多项。
也就是,列表控件可以实现DataGridView的功能,将我们想要的数据显示出来,并且外观还要远远超过DataGridView,可以根据我们的需要建立我们需要的空间,它有一些常用的属性这里分享给大家
.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);
}
希望这些分享可以给大家带来收获,也希望大家多多指正。
`