一个表两个属性,key和value,key是有多个namespaceID的,例如XX.XXX.XXXX这种,具体表如下:
key value
combo.holy.aa.bbb v1
combo.bravo.aa.bbb v2
fever.grail.aa.bbb v3
我想要设计3个下拉菜单,第一个下拉菜单可以显示combo和fever,假如选定combo以后,到第二个下拉菜单可以显示holy和bravo,就等于是逐个筛选,然后最后显示在datagridview上面,思路和代码都想不明白。谢谢大家指教了,分数不多解决的话可以追加~
9 个解决方案
#1
显示在datagridviw上是什么意思?
用代码分成2个DataTabIe
第一个为单列,其中向值为:combox,fever
第二个为双列:1:combobox,combobox,fever
2:holy,bravo,grail
3:v1,v2,v3
第一个绑定combobox
第二个绑定第二个表的view
根据第一个combobx的值去筛选第二个datatable就0K了。
用代码分成2个DataTabIe
第一个为单列,其中向值为:combox,fever
第二个为双列:1:combobox,combobox,fever
2:holy,bravo,grail
3:v1,v2,v3
第一个绑定combobox
第二个绑定第二个表的view
根据第一个combobx的值去筛选第二个datatable就0K了。
#2
用split提取某一段的值,然后去重复,加载。
#3
好吧就是直接显示出来的意思..
因为这个key的值都是由用户输入的,所以Key的ID怎么排都是未知的,所以第一个combobox就显示所有Key的第一个ID,第二个combobox显示第二个ID,第三个....以此类推达到逐一筛选的目的~
#4
可以简单用代码实现一下吗...万分感谢~
#5
用split提取某一段的值,然后去重复,加载。
#6
可以具体一点吗。。。
#7
反复看了你的方法,没看懂= =可以具体用代码说明一下吗?
#8
Split(Split(s, ",")(i), ",")(0)输出是s字符串通过","分割后的第i个数组内的字符再次使用","分割后的第0个数组内的字符
比如s=",1,2,3,4,5,"
此时AllNum1(LineNum1)=5,LineNum1=1
For i = 1 To AllNum1(LineNum1)
NumberNum1(LineNum1, i) = Split(Split(s, ",")(i), ",")(0)
Next i
split过程如下
Split(s, ",")(0)=""
Split(s, ",")(1)="1"
Split(s, ",")(2)="2"
Split(s, ",")(3)="3"
Split(s, ",")(4)="4"
Split(s, ",")(5)="5"
Split(s, ",")(6)=""
外面再有一级split
是将上面分割的字符串再次通过 ","分割并取分割后的第一个字符
#9
自己用哈希表解决了,但还是感谢楼上两位提供了思路哦~
#1
显示在datagridviw上是什么意思?
用代码分成2个DataTabIe
第一个为单列,其中向值为:combox,fever
第二个为双列:1:combobox,combobox,fever
2:holy,bravo,grail
3:v1,v2,v3
第一个绑定combobox
第二个绑定第二个表的view
根据第一个combobx的值去筛选第二个datatable就0K了。
用代码分成2个DataTabIe
第一个为单列,其中向值为:combox,fever
第二个为双列:1:combobox,combobox,fever
2:holy,bravo,grail
3:v1,v2,v3
第一个绑定combobox
第二个绑定第二个表的view
根据第一个combobx的值去筛选第二个datatable就0K了。
#2
用split提取某一段的值,然后去重复,加载。
#3
好吧就是直接显示出来的意思..
因为这个key的值都是由用户输入的,所以Key的ID怎么排都是未知的,所以第一个combobox就显示所有Key的第一个ID,第二个combobox显示第二个ID,第三个....以此类推达到逐一筛选的目的~
#4
可以简单用代码实现一下吗...万分感谢~
#5
用split提取某一段的值,然后去重复,加载。
#6
可以具体一点吗。。。
#7
反复看了你的方法,没看懂= =可以具体用代码说明一下吗?
#8
Split(Split(s, ",")(i), ",")(0)输出是s字符串通过","分割后的第i个数组内的字符再次使用","分割后的第0个数组内的字符
比如s=",1,2,3,4,5,"
此时AllNum1(LineNum1)=5,LineNum1=1
For i = 1 To AllNum1(LineNum1)
NumberNum1(LineNum1, i) = Split(Split(s, ",")(i), ",")(0)
Next i
split过程如下
Split(s, ",")(0)=""
Split(s, ",")(1)="1"
Split(s, ",")(2)="2"
Split(s, ",")(3)="3"
Split(s, ",")(4)="4"
Split(s, ",")(5)="5"
Split(s, ",")(6)=""
外面再有一级split
是将上面分割的字符串再次通过 ","分割并取分割后的第一个字符
#9
自己用哈希表解决了,但还是感谢楼上两位提供了思路哦~