WinForm DV控件 pivotGridControl获取列值? [图]

zhaozhijun0207 2010-09-29 11:07:30
[VS2008 WinForm C# ][Developer Express v2009 vol 2]
我现在能获取,点中单元格的值

private void pivotGridControl1_CellClick(object sender, PivotCellEventArgs e)
{
try
{
string m = pivotGridControl1.GetCellValue(e.ColumnIndex, e.RowIndex).ToString();
MessageBox.Show(m);
}
catch (Exception) { }
}

问题:
当我点中"38"这个单元格时,怎么获取款式编号(K084010283),颜色编号(020),尺码编号(07)呢?

只有销售数量,库存数量是可编辑的单元格,
款式,颜色,尺码 相当于横向的列表头,点击不了(这个控件还不怎么会用)
...全文
841 15 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
qqcjw 2011-08-04
  • 打赏
  • 举报
回复
OLAP 控件本来就用来做分析.钻取数据就行..你取值来干嘛?
likedefly 2010-09-30
  • 打赏
  • 举报
回复
你可以根据单元格的行获取这一行的值,从你获取的行找到关键字,再由你的关键字定位左半边的信息
兔子-顾问 2010-09-30
  • 打赏
  • 举报
回复
囧。DevExpress中的。从没用过这个。原来这么好看啊。回头用用。
兔子-顾问 2010-09-30
  • 打赏
  • 举报
回复
不是标准控件。不知道你的控件是如何获取。
你这是什么控件?免费么?
zhaozhijun0207 2010-09-30
  • 打赏
  • 举报
回复
自己解决了:

private void pivotGridControl1_CellClick(object sender, PivotCellEventArgs e)
{
try
{
string _fasID = pivotGridControl1.GetFieldValue(pivotGridControl1.Fields[0], e.RowIndex).ToString();
string _colID = pivotGridControl1.GetFieldValue(pivotGridControl1.Fields[2], e.RowIndex).ToString();
string _sizID = pivotGridControl1.GetFieldValue(pivotGridControl1.Fields[4], e.RowIndex).ToString();
MessageBox.Show(_fasID + "\n" + _colID + "\n" + _sizID);
}
catch (Exception) { }
}
zhaozhijun0207 2010-09-30
  • 打赏
  • 举报
回复
这控件的资料好少,还是没找到相关的属性
在等等看,没人回复,就结贴.
zhaozhijun0207 2010-09-29
  • 打赏
  • 举报
回复

pivotGridControl1控件居然点不出row属性

pivotGridControl1.GetCellValue(0, e.RowIndex).ToString();获取的是销售数量
pivotGridControl1.GetCellValue(1, e.RowIndex).ToString();获取的是库存数量
还是拿不到款式编号?
swalp 2010-09-29
  • 打赏
  • 举报
回复
还有就是你的pivotGridControl1.GetCellValue(e.ColumnIndex, e.RowIndex).ToString();可以获取值,你把这个函数的参数改改,看看GetCellValue的参数能不能添加列名来获取值。
swalp 2010-09-29
  • 打赏
  • 举报
回复
drgvDisplay 是DataGridView的名字,是我的程序中的,你换成你的DV的名字
zhaozhijun0207 2010-09-29
  • 打赏
  • 举报
回复

drgvDisplay 没这个属性,点不出来?
也是在pivotGridControl1_CellClick事件吗?
swalp 2010-09-29
  • 打赏
  • 举报
回复
drgvDisplay.Rows(e.RowIndex).Cells("列名称").Value.ToString
drgvDisplay.Rows(e.RowIndex).Cells(列号).Value.ToString
这样都能获取。但是合并单元格的我没试过!

swalp 2010-09-29
  • 打赏
  • 举报
回复
额,昨天忘记和你说了,你获取到单元格的时候。
drgvDisplay.Rows(e.RowIndex).Cells("款式编号").Value.ToString
获取款式编号的值,但是要保证你的款式编号要和“38”在同一行。如果你的款式编号是合并的单元格的话我不清楚能不能获取到,你可以试试。
zhaozhijun0207 2010-09-29
  • 打赏
  • 举报
回复
图片有点长,被截断了
红圈的单元格 就是"38"值的库存数量单元格
swalp 2010-09-29
  • 打赏
  • 举报
回复
实在对不起,我看错了,我以为你的是DataGridView控件呢。先说声不好意思。
我看了你的控件,这个控件我没用过,不过看网上说的都是,这个控件是分区域的。要想获取你想要的,我感觉应该先找到你要的数据对应的区域,然后再取行和列对应的值。
相关的资料你看看
http://blog.163.com/kingmond@126/blog/static/22931162008452193987/
希望对你有帮助

111,098

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧