datagridview中要显示的列很多,每个客户的需求又不同,现在想把列设置为可选的,就是每个客户根据自己的需求增删datagridview中的显示列。应该不和sql语句涉及,因为是将界面中控件的信息加入的datagridview中,是已经查询出来的语句,所以不和sql涉及。
我自己思考的方法有三个
一、在界面添加listbox栏,讲listbox中放置界面控件和datagridview中都要显示的字段,然后进行比对,listbox中存在的也存在控件中,那就显示到datagridview中,如果双击移除的字段就不显示。但是这个方法的缺点是,控件太多,没办法做循环,或者对应不一致。
二、不知道可否在显示栏的每个列前面加checkbox勾选。
三、直接双击显示栏的列可否进行移除,可是移除过后如果其他人想增加显示的列该怎么办呢?
你的第二个,第三个都可以实现。只要找到事件,在事件中写隐藏。
提供一个配置界面,用户在这里设置要选择的列,用传统的添加/移除或者用CheckBox都可以。
然后显示界面中进行处理,根据用户设置显示就可以了。
直接在datagridview上设置的话,实现麻烦,而且使用起来也不直观;
把设置和显示分开就可以了,条理清晰、处理简单。