VB.Net程序设计:Dictionary和Collection搭配使用
来源:互联网 发布:如何查询电脑mac地址 编辑:程序博客网 时间:2024/05/21 17:54
只为自己练习,参考,备忘。或许对你没有参考价值,请不要模仿。
一个单据有几个小项目,每个小项目又有几个小项目。可以理解:一个主表,有子表,子表又有子表。
某些单据套用,简单的处理程序。
Public Class Form2 '一个总集合:子表。 Dim mList As New Dictionary(Of String, Collection) '一个子表里面的子表记录集 Dim mcc As New Collection Private Sub ShowList() Me.ListView1.Items.Clear() If mList.Count > 0 Then Dim mc As Collection Dim item As ListViewItem Dim strName As String For Each obj As KeyValuePair(Of String, Collection) In mList mc = obj.Value strName = String.Empty item = New ListViewItem For Each c As Object In mc strName &= CType(c, DataGridViewRow).Cells(1).Value.ToString Next item.Text = strName item.ImageIndex = 0 item.Tag = mc.GetHashCode.ToString Me.ListView1.Items.Add(item) Next End If End Sub Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.DataGridView1.Columns.Add("ID", "ID") Me.DataGridView1.Columns.Add("NAME", "NAME") Me.DataGridView1.Tag = mcc.GetHashCode.ToString End Sub Private Sub BtnAddColl_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAddColl.Click mcc = New Collection Me.DataGridView1.Rows.Clear() Me.DataGridView1.Tag = mcc.GetHashCode.ToString End Sub Private Sub BtnSaveColl_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSaveColl.Click If Me.DataGridView1.Rows.Count > 0 Then mcc.Clear() For i As Integer = 0 To Me.DataGridView1.RowCount - 1 If Me.DataGridView1.Rows(i).IsNewRow = False Then mcc.Add(Me.DataGridView1.Rows(i), i.ToString) End If Next If mList.ContainsKey(Me.DataGridView1.Tag) Then mList.Item(Me.DataGridView1.Tag) = mcc Else mList.Add(mcc.GetHashCode.ToString, mcc) End If ShowList() End If End Sub Private Sub ListView1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListView1.SelectedIndexChanged If Me.ListView1.SelectedItems.Count > 0 Then Me.DataGridView1.Tag = Me.ListView1.SelectedItems.Item(0).Tag.ToString mcc = mList.Item(Me.DataGridView1.Tag) Me.DataGridView1.Rows.Clear() For Each mc As Object In mcc Me.DataGridView1.Rows.Add(CType(mc, DataGridViewRow)) Next End If End SubEnd Class
- VB.Net程序设计:Dictionary和Collection搭配使用
- VB.Net程序设计:Dictionary和Collection搭配使用
- dictionary 和 collection
- VB.Net Dictionary的技巧和8个实例
- 在Asp.Net MVC中使用ModelBinding构造Array、List、Collection以及Dictionary
- vb.net 程序设计规范
- dictionary的使用.net
- dictionary-字典用法 VB.net 2005
- VB.Net程序设计:动态添加右键菜单和子菜单
- VB.Net程序设计:XPTable注意点HeaderHeight和RowHeight
- delphi使用VB的dictionary对象
- VB.Net程序设计:分页控件
- .net hashTable 和dictionary 区别
- 使用VB.net和VB编写DLL组件的方法
- VB.NET&ADO.NET(程序设计补遗)
- ListView 和 BaseAdapter 搭配使用
- UITabBarController和UINavigationController搭配使用
- C#中Collection和Dictionary的foreach遍历方式
- debug的一些经验
- php GD库函数(保存不同大小的图片,即原图与缩放图片等)
- Uart串口实验问题
- SVM入门(二)线性分类器Part 1
- LogMiner
- VB.Net程序设计:Dictionary和Collection搭配使用
- ubuntu 11.10 下面如何进入单用户模式
- sgu174 walls 并查集 + 哈希
- Android中万能的BaseAdapter的使用 .
- IE6下实现position:fixed
- C++实现水波纹、火焰和血浆效果
- php导出中文内容excel文件类
- 大黑山与冒险
- ArrayList、Vector、LinkedList的区别及其优缺点?