标题:[求助]dataGridView的下拉菜单的问题
只看楼主
chenyi472404
Rank: 1
等 级:新手上路
帖 子:107
专家分:0
注 册:2006-10-11
得分:0 
dataGridView1[e.ColumnIndex + 1, e.RowIndex]这个是我单击的那个单元格后面的单元格是吧

2007-10-12 14:11
crazymk
Rank: 1
等 级:新手上路
威 望:1
帖 子:343
专家分:0
注 册:2007-8-30
得分:0 
我不能打簡體中文。 「販売先コード」只是我給妳舉的例子罷了。

妳應該整理一下思路。
點前一個單元格→給下一個單元格賦值,很簡單的業務邏輯。

cellvaluechanged是所有單元格改變值的時候都觸發的事件,所以要在cellvaluechanged裡面判斷響應該事件的單元格
是不是妳點的那個。然後給下一個單元格「也即dataGridView1[e.ColumnIndex + 1, e.RowIndex].value」賦值就可以了

[此贴子已经被作者于2007-10-12 14:46:37编辑过]


すばらしいコードを書き出すのは楽しい事です
2007-10-12 14:44
chenyi472404
Rank: 1
等 级:新手上路
帖 子:107
专家分:0
注 册:2006-10-11
得分:0 

private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex >-1)
{

dataGridView1[e.ColumnIndex + 1, e.RowIndex].Value="213";

}

}


dataGridView1[e.ColumnIndex + 1, e.RowIndex].Value="213"怎么要报错呀

错误是:索引超出范围。必须为非负值并小于集合大小。
参数名: index



2007-10-12 14:46
chenyi472404
Rank: 1
等 级:新手上路
帖 子:107
专家分:0
注 册:2006-10-11
得分:0 
先谢谢,你的意思我明白了,不过你的e.ColumnIndex==Column1的列番號这个是用来判断什么的呢,不是很懂这个意思~~

2007-10-12 14:48
crazymk
Rank: 1
等 级:新手上路
威 望:1
帖 子:343
专家分:0
注 册:2007-8-30
得分:0 
if (e.RowIndex >-1)不對

如果妳點擊的是第一列那麼應該這樣判斷
if (e.ColumnIndex ==0)
同時必須要保證後面還有一列也就是說e.ColumnIndex + 1不能超過DGV的列索引
dataGridView1[e.ColumnIndex + 1, e.RowIndex].Value="213";

[此贴子已经被作者于2007-10-12 14:51:27编辑过]


すばらしいコードを書き出すのは楽しい事です
2007-10-12 14:50
chenyi472404
Rank: 1
等 级:新手上路
帖 子:107
专家分:0
注 册:2006-10-11
得分:0 
if (e.ColumnIndex ==Column1.Index)
这样写吗,我试过了,可以这两个函数的索引一直都是相同的呀,怎么能起判断的做用呢,

2007-10-12 14:55
chenyi472404
Rank: 1
等 级:新手上路
帖 子:107
专家分:0
注 册:2006-10-11
得分:0 
那应该怎么判断才好呢,

2007-10-12 14:58
chenyi472404
Rank: 1
等 级:新手上路
帖 子:107
专家分:0
注 册:2006-10-11
得分:0 
if (e.ColumnIndex ==dataGridView1[e.ColumnIndex, e.RowIndex].ColumnIndex)这样判断吗

2007-10-12 15:07
crazymk
Rank: 1
等 级:新手上路
威 望:1
帖 子:343
专家分:0
注 册:2007-8-30
得分:0 

暈 是第一列就用0 第二列就用1 以此類推阿。


すばらしいコードを書き出すのは楽しい事です
2007-10-12 15:07
chenyi472404
Rank: 1
等 级:新手上路
帖 子:107
专家分:0
注 册:2006-10-11
得分:0 
if (e.ColumnIndex == 0)
{
dataGridView1[e.ColumnIndex + 1, e.RowIndex].Value = "213";
}
呵呵不要晕了,

这个写也报错
索引超出范围。必须为非负值并小于集合大小。
参数名: index

2007-10-12 15:10



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-176938-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.114001 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved