【发布时间】:2014-02-20 22:22:37
【问题描述】:
我有以下代码:
Label docsLabel = new Label();
docsLabel = (Label)tasksPlaceholder.FindControl("taskdocs_" + taskId);
int index = tasksPlaceholder.Controls.IndexOf(docsLabel);
标签位于占位符中,但当我调用 .IndexOf() 时,它总是返回 -1。
如何找到这个控件的正确位置?
【问题讨论】:
-
当你在一行之后使用
FindControl时,你为什么还要使用new Label()?这只是令人困惑,什么也没做。 -
可能是因为标签不是占位符的直接子代。
-
(Label)tasksPlaceholder.FindControl("taskdocs_" + taskId);真的找到控件了吗?你不把null传给IndexOf()吗? -
它确实找到了控件,但它不是占位符的直接子元素。
-
@AndreJ,那么你不能指望它出现在占位符的控件集合中。
标签: c# asp.net indexof asp.net-placeholder