如何解决如果条件在循环内则开始统计
我试图用一个宏变量编写一个循环,该变量将根据循环的迭代值而变化。请参见下面的代码。
我想遍历代码值“ QLD”和“ DDM”,并且如果代码为“ QLD”,则我希望本地宏索引等于“ QQQ”,否则为“ DIA”。
foreach ticker in "QLD" "DDM"{
if `ticker'="QLD"{
local index = "QQQ"
}
else{
local index = "DIA"
}
di `index'
}
解决方法
您要求的代码更近
protected void BtnDoAction_Click(object sender,EventArgs e)
{
var id = Guid.Parse(((LinkButton)sender).CommandArgument);
var varId = id.ToString().Replace("-","_");
var control = "ddlActions_" + varId;
DropDownList ddl = new DropDownList();
foreach (GridViewRow row in gvLista.Rows)
{
if (row.RowType == DataControlRowType.DataRow)
{
ddl = (DropDownList)row.FindControl(control);
}
}
var selectedValue = ddl.SelectedValue; //<--- ddl is null
}
您的代码中有两个错误,而您所需的代码也更多。错误是在需要的地方省略了引号,并使用foreach ticker in QLD DDM {
if "`ticker'" == "QLD" local index = "QQQ"
else local index = "DIA"
di "`index'"
}
测试是否相等。
仅此一项就不需要循环:
=
实际上,如上面的命令所示, local index = cond("`ticker'" == "QLD","QQQ","DIA")
di "`index'"
显然根本不需要被提及。 (如果这样做,则您的代码由于其他原因而错误。)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。