2 wangyantao hb wangyantao_hb 于 2014.11.27 12:06 提问

C# 如下是lable控件绑定,在onclick事件中如何获取i的值

for (int i = 0; i < dt.Rows.Count; i++)

{ text += dt.Rows[i]["G_Title"].ToString(); }

lable1.text=text;

4个回答

vb763305825
vb763305825   2014.12.05 17:14
已采纳
            for (int i = 0; i < dt.Rows.Count; i++) {
                text += dt.Rows[i]["G_Title"].ToString();
            }
            lable1.text = text;
            lable1.Tag = i;

测试下语法高亮

tangfengray
tangfengray   2014.11.27 13:37

没看懂你想表达什么意思...

tangfengray
tangfengray 回复wangyantao_hb: 属性变量都可以,你记录下来,想用的时候取就是了..
大约 3 年之前 回复
wangyantao_hb
wangyantao_hb 在onclick事件中如何获取i的值
大约 3 年之前 回复
xiaozhang0372
xiaozhang0372   2014.11.27 14:08

在什么控件的onclick中获取i的值.你的i是局部变量,在其他地方无法获取。只能在i的生命周期内获取。

如果要在循环外获取,需要在循环外定义变量j,循环内j=i;
然后循环外的控件,比如 lable.onclick+= delegate{ MessageBox.show(j); }
这是把利用委托来写的。

wangyantao_hb
wangyantao_hb 输出的永远是同一个值,最后一个i,不对
大约 3 年之前 回复
q107770540
q107770540   Ds   Rxr 2014.11.27 14:08
for (int i = 0; i < dt.Rows.Count; i++)

{ text += dt.Rows[i]["G_Title"].ToString(); }
lable1.text=text;
lable1.Tag=i;   

将I的值写到每个LABEL的TAG中记录一下

wangyantao_hb
wangyantao_hb 记录下,然后在onclick事件中输出?这样不对,输出后是最后一个i
大约 3 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!