我在获取用户控件的路径方面遇到问题。场景如下:
在 aspx 中,我有多个用户控件。在其中一个用户控件中,我需要遍历其他用户控件并获取它们的物理路径。有什么简单的方法可以做到这一点?
List<string> GetUserControlPathsForPage {
var list = new List<string>();
return getUserControlPathsRecursive(Page.Controls, list);
}
void getPathsRecursive(ControlCollection controls, List<string> list) {
foreach (var c in controls) {
var uc = c as UserControl;
if (uc != null) {
list.Add(Server.MapPath(uc.AppRelativeVirtualPath));
}
getPathsRecursive(c.Controls,list);
}
}