2012-02-21 4 views
1

У меня есть этот ASP код:FindControl() и вложенные элементы управления

<ext:GridPanel ID="grid"> 
       <ColumnModel runat="server"> 
        <Columns> 
         <ext:RowNumbererColumn /> 
         <ext:Column Align="Center" ColumnID="Type"> 
         </ext:Column> 
        // closing tags 

Я хочу, чтобы получить объект столбцы. Я пытаюсь это:

var typeCol= this.grdResourceState.ColumnModel.Columns.Where(column => column.ColumnID == "Type"); // this works 
var typeColRef= FindControl("grdResourceState.ColumnModel.Columns"); // this is a null 

Что мне делать, чтобы быть в состоянии FindControl искать детей управления?

ответ

0

Вы должны назначить id элементу управления ColumnModel, а затем получить, если. После того, как вы получили его, вы получите доступ к управлению детей:

<ext:GridPanel ID="grid"> 
       <ColumnModel runat="server" id="someId"> 
        <Columns> 
         <ext:RowNumbererColumn /> 
         <ext:Column Align="Center" ColumnID="Type"> 
         </ext:Column> 
        // closing tags 

Тогда:

var typeCol= this.grdResourceState.ColumnModel.Columns.Where(column => column.ColumnID == "Type"); // this works 
var typeColRef= FindControl("someId"); 

Here's more info on the FindControl method

Смежные вопросы