xgr 发表于 2013-8-25 19:51:11

为何ListView控件在获取最后列边框时出错?

本帖最后由 xgr 于 2013-8-25 19:57 编辑

ListView控件如图,共六列

本意想点击第六列时button7按钮移动到选择行的第六列,可是出错,代码如下            button7.Visible = true;
            int i = listView1.SelectedIndices;
            //获取单元格位置
            Rectangle r = listView1.Items.SubItems.Bounds;
            button7.SetBounds(r.X + listView1.Location.X, r.Y + listView1.Location.Y, r.Width, r.Height);如果把5改成4则不会出错。这是怎么回事!
出错文本:
************** 异常文本 **************
System.ArgumentOutOfRangeException: InvalidArgument=“5”的值对于“index”无效。
参数名: index

出错语句:
Rectangle r = listView1.Items.SubItems.Bounds;



sieben 发表于 2013-8-26 14:13:56

你第六列有没有列名?有没有实际的列?

sieben 发表于 2013-8-26 14:15:21

listView1.Items.SubItems.Count 等于6还是5?
l即使有6列,istView1.Items.SubItems 会不会是null ?

xgr 发表于 2013-8-26 16:45:50

第六列是真实存在的
现在已用替代法做了相同的功能。
页: [1]
查看完整版本: 为何ListView控件在获取最后列边框时出错?