关于DevExpress的GridView.VisibleIndex的赋值问题

本来想用VisibleIndex来控制gridview中的列的顺序(注意不是每列的排序),通过后台读取Xml文件里配置好的列的顺序来动态的设置列的顺序,但是跟踪时发现,x... 本来想用VisibleIndex来控制gridview中的列的顺序(注意不是每列的排序),通过后台读取Xml文件里配置好的列的顺序来动态的设置列的顺序,但是跟踪时发现,xml文件中的列的顺序号没有问题,读取后的值也没有问题,但是在给VisibleIndex属性赋值时gridView1.Columns[i].VisibleIndex = Convert.ToInt32(hash[gridView1.Columns[i].FieldName]);就出现了问题(比如Convert.ToInt32(hash[gridView1.Columns[i].FieldName])的值是3,赋值后gridView1.Columns[i].VisibleIndex 是2)。

总是会出现这种少1的情况。这是怎么回事?(跟过源码,里面处理的的确有-1的地方,但是没懂它的逻辑)求解释。
展开
 我来答
freeeeeewind
推荐于2018-05-06 · TA获得超过1万个赞
知道大有可为答主
回答量:3227
采纳率:94%
帮助的人:1354万
展开全部

在DevExpress GridControl中,GridView中

  • 如果VisibleIndex=-1,则这列将不会显示(不可见);

  • 如果VisibleIndex>=0,则按照VisibleIndex从小到大,依次显示各个列。

在用xml设置各个列的显示位置时,将各个列的VisibleIndex都设置为-1,然后再用xml读取的值设置相应的列:

// 先将所有列的 VisiableIndex 置为 -1
foreach(var column in gridView1.Columuns)
{
    column.VisiableIndex = -1;
}
// 然后再按xml,设置各个列的显示次序
……
大号是贼
2014-08-28 · 超过37用户采纳过TA的回答
知道小有建树答主
回答量:81
采纳率:0%
帮助的人:62.5万
展开全部
把跟踪的源码截个图吧,看下在-1的地方
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式