2014-01-06 2 views
0

У меня есть веб-форма и вы хотите запустить метод, чтобы вернуть список всех идентификаторов элемента управления из формы, чтобы я мог экспортировать список в нечто вроде Excel (копировать и вставлять из другой объект в порядке).Получить список всех элементов управления в webform

Вот пример того, что я хочу, чтобы вернуться:

lblName 
lblAddress 
txtEmail 
ddlSelection 

Как я могу идти об этом?

+0

Пожалуйста, смотрите, так как этот вопрос задан много раз. – OldProgrammer

+0

@connersz, попробуйте эту ссылку: http://stackoverflow.com/questions/277646/finding-all-controls-in-an-asp-net-panel –

+0

Я видел эти примеры, но я не хочу что-то делать в частности, с некоторыми контрольными средствами в рамках другого контроля. Я действительно хочу перечислить каждый элемент управления в веб-форме во что-то. – connersz

ответ

1
// Create a method to loop through 
// the control tree and record ids 
public void GetAllControlIDs(Control c, List<String> ids) 
{ 
    ids.Add(c.ID); 
    if(c.HasControls()) 
     foreach(Control ch in c.Controls) 
      GetAllControlIDs(ch, ids); 
} 

// Call your method and pass in the 
// Form since your question asks for 
// the Form controls 
List<String> allControlIDs = new List<String>(); 
GetAllControlIDs(this.Page.Form, allControlIDs); 

foreach (String id in allControlIDs) 
    Console.WriteLine(id); 
Смежные вопросы