本人想实现类似于这种界面功能:可以选择其中的几项。
本人做的界面大概这个样子:
想实现:可在右侧的选项框中选中想出库的货物,点击“确定出库”后,能得到出库货物的数量以及出库货物信息。不知道能不能实现?
补充一下,本人菜鸟,只会VB.NET,不懂C#
我也是只会VB.net的菜鸟啊,已经菜了十多年了,哈哈。
1、既然是菜鸟,让你用DevExpress本身的多选功能,你又不肯,那我也没有办法。
2、你非要用WEB模式的CHECKBOX多选,也给了你方法,你又不懂得用,那有什么办法呢?
3、C#和VB.NET语法基本是一样的,你懂得VB.NET,看懂C#应该要没有问题的,只不过一个是中国式写法(命令式写法),一个是外国式写法(对象式写法)。实在看不懂,你安装一个SharpDeveloper,里面有工具可以帮你把C#翻译成VB.NET,也可以反过来。至于DLL,你可以使用Reflector或是其他工具,也是可以翻译成VB.NET或是C#代码的,多看看,自然就懂了。
4、如果按照DevExpress的多选方式,你可以通过Gridview.GetSelectRows得到用户选择的行的行号。
5、提示只能到这儿了,再说下去不如我帮你做了。
真是不好意思,我做这个软件是公司用的,dev本身的多选看起来不如勾选直观。。。所以想这么实现
我自己也搜了一些例程,但运行时老是出错,所以就像请教一下大家。
@贾晓俊AA: 我没有说有问题,我只是说,你要用DEV,又要别扭用CHECKBOX,那你就得承受一些代价。
就如同你要做WEB,然后又想弄成C/S模样的,那也一样会很痛苦。
代价不是稍微改一下就好的。
今天跟客户开会才谈起这事,如果你要求效果,本来软件是10万,现在再加30万。这样客户就知道啥意思了,因为他以为是加300。
可能你也以为是加300。
@爱编程的大叔: 恩,那我就不用这个了,那有没有别的,比较直观的、可以一次选择多项的?不一定要连续选择啊,大神指点一下吧?PS:我就看DEV给的DEMO有一个这个(下图),觉得特别漂亮,才执着于这个的
@贾晓俊AA: 他这个是编辑,而不是查看。
就是说你的表格中要有个字段,对应Bug,True/False。
我一直都是用的DEV表格,一直都是用Ctrl/Shift进行多选的。
Shift是连续多选。Ctrl就可以实现间断多选。
选择的行有颜色区分。
如果你一定要用CHECKBOX,要麻烦许多,也不是不行,你自己慢慢摸索吧。
反正大不了继承一个子类,在里面搞点明堂出来。偶尔出点BUG也是正常的,
要想不出BUG,改造DEV还是得花上个把星期或者个把月才行。
如果你还是如此纠结,建议你不如换个组件,看看Component One或是Terik之类的能否满足你的要求。
刚刚查了一下,DEV从V13.2开始有这个功能,你升级DEV版本吧。
@爱编程的大叔: 恩,好的,谢谢您,那我暂时先不纠结了。
那就在请教一下,选中行的颜色能不能更明显一些呢?我这个看上去不是很明显啊。。。
@贾晓俊AA: 颜色都是可以修改的,你在属性里面找找就有了Appearance这个属性吧。
@爱编程的大叔:好像没有呀,我再自己想想办法。。。想不出来再请教
@爱编程的大叔:
麻烦请教一下,就这样选中了多行,待点击“出库”后,如何更改每一件货物的信息呢?也就是如何获得每行数据的FocusedRowHandle()呢?
@贾晓俊AA: GetSelectRows(),返回的是所有选中行的行号。
我做过类似的
主要思路是先确定checkbox的列名,在将列的handle取出来,
有了int[] handle 就什么都有了
for (int rowIndex = 0; rowIndex < this.gridView1.RowCount; rowIndex++)
{
object objValue = this.gridView1.GetRowCellValue(rowIndex, "CheckMarkSelection");
if (objValue != null)
{
bool check = false;
bool.TryParse(objValue.ToString(), out check);
if (check)
{
list.Add(rowIndex);
}
}
}
@xuliyuan173: 这些代码要写的什么事件下呢?
@贾晓俊AA: 你需要在什么事件获取这些行 就在写在这个事件下啊
这个代码就是提取checked行
@xuliyuan173:。。。那我就不懂了,在操作时,我遇到的情况是:只能勾选一行,再勾选其他行时,原来选中的行就自动取消了呀
@贾晓俊AA: 你看看有没有这个属性 optionselection--》multiselect
@xuliyuan173: 已经设置了,还是不能多个勾选啊
@贾晓俊AA: 那你有没有绑定字段 这种情况很可能是没有绑定字段
@xuliyuan173: 哦,怎样绑定字段啊?
@贾晓俊AA: 构造一个字段,选中为1,没选中为0,点击的时候赋值
@xuliyuan173: 恩,我试试啊,先不结贴了,尝试完了再结贴可以吧?