0

ユーザー コントロールのパスの取得に関して問題があります。シナリオは次のとおりです。

aspx には、複数のユーザー コントロールがあります。これらのユーザー コントロールの 1 つで、他のユーザー コントロールをループして、それらの物理パスを取得する必要があります。これを行う簡単な方法はありますか?

4

1 に答える 1

3
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);
     }
 }
于 2008-10-07T07:18:52.153 に答える