TextBox DD1 = (TextBox)DDJD.Rows[j].Cells[j].Controls[0];
以上这句话,是获得TextBox控件,但是我现在DD1的名字要可以改变的,因为这句话是在循环里获得的,如果DD1不能被改变,那就会出错,不知道有什么好办法,可以在获得控件的时候改边控件的ID
这段就是具体代码,请大家研究一下
HtmlTable[] ht = {DDJD,FSJD,BHJD,TXJD,ZDHJD};
for(int i=0;i<ht.Length;i++)
{
HtmlTable Name = (HtmlTable)ht[i];
TextBox[] tb = {};
for(int j=1;j<Name.Rows.Count;j++)
{
string OrgName = Name.ID.Substring(0,Name.ID.Length-2).Trim();
switch(OrgName)
{
case "DD":
{
if(i == 0)
{
tb[j] = "DD"+j;
}
break;
}
case "FS":
{
if(i == 1)
{
tb[j+i] = "FS"+j;
}
break;
}
case "BH":
{
if(i == 2)
{
tb[j+i] = "BH"+j;
}
break;
}
case "TX":
{
if(i == 3)
{
tb[j+i] = "TX"+j;
}
break;
}
default:
{
if(i == 4)
{
tb[j+i] = (TextBox)"ZDH"+j;
}
break;
}
}
}
以上这句话,是获得TextBox控件,但是我现在DD1的名字要可以改变的,因为这句话是在循环里获得的,如果DD1不能被改变,那就会出错,不知道有什么好办法,可以在获得控件的时候改边控件的ID
这段就是具体代码,请大家研究一下
HtmlTable[] ht = {DDJD,FSJD,BHJD,TXJD,ZDHJD};
for(int i=0;i<ht.Length;i++)
{
HtmlTable Name = (HtmlTable)ht[i];
TextBox[] tb = {};
for(int j=1;j<Name.Rows.Count;j++)
{
string OrgName = Name.ID.Substring(0,Name.ID.Length-2).Trim();
switch(OrgName)
{
case "DD":
{
if(i == 0)
{
tb[j] = "DD"+j;
}
break;
}
case "FS":
{
if(i == 1)
{
tb[j+i] = "FS"+j;
}
break;
}
case "BH":
{
if(i == 2)
{
tb[j+i] = "BH"+j;
}
break;
}
case "TX":
{
if(i == 3)
{
tb[j+i] = "TX"+j;
}
break;
}
default:
{
if(i == 4)
{
tb[j+i] = (TextBox)"ZDH"+j;
}
break;
}
}
}
解决方案 »
- 长连接 如果实现行不占太多资源?
- SqlParameterCollection 只接受非空的 SqlParameter 类型对象。 参数名: value
- vbs 每隔20秒访问一个
- 求达人关于checkbox取值过程中的一些问题,在线等,谢谢~~~~~~~
- 问个Net正则表达式的问题,高分赠送
- 如何进行多项目集成打包,生成多个iis虚拟目录???
- |M| 问一下大家在类里面
- 亮眼一憋
- 下载文件的问题
- 请高手帮我在Label上画个好看的小巧点的上下箭头,我画的不好看!又大又宽
- SqlConnection有没有类似ASP中的Conn.Execute("Select * From [User] Where ID = 54")("UserName")的办法?
- 十万火急。。路过的大哥大姐帮帮小弟 关于treeview的问题,没分了,实在抱歉。。。
TextBox tb = null;
for(int i=0;i<ht.Length;i++)
{
HtmlTable Name = (HtmlTable)ht[i];
for(int j=1;j<Name.Rows.Count;j++)
{
string OrgName = Name.ID.Substring(0,Name.ID.Length-2).Trim();
switch(OrgName)
{
case "DD":
tb = (TextBox)Name.Rows[j].Cells[列号].Controls[0];
if(i == 0)
tb.ID = "DD"+j.ToString();
break;
............
楼主为什么要改变控件的ID? 为什么简单的不做?另外你说的是改控件的ID,而你的代码看来你要改的不是控件的ID而是变量名.....请楼主准确再次表达一下你到底最终需要的是什么????
如果是要在循环里面去读取一批分别叫 DD1,DD2,DD3....的不确定控件,可以用父控件.FindControl("DD"+ i.ToString()) 得到;
如果是要在循环内遍历一批确定的控件 DD1,DD2,DD3.... 则直接把它们赋值给数组就行了如果都不是,你最好重新表达你的要求.