2011-01-13 90 views
2

是否有可能使用頁面屬性作爲Datasource/DataSourceID的ListBox或像Telerik RadCombobox其他控件?ASP.NET ObjectDatasource使用代碼隱藏屬性

我有一個問題,將數據綁定到RadGrid的FilterTemplate中定義的Telerik RadCombobox。我在頁面的代碼隱藏中創建了一個屬性,並希望以這種方式訪問​​它。

<telerik:GridBoundColumn [...]> 
    <FilterTemplate> 
     <telerik:RadComboBox 
      ID="filter" 
      AutoPostBack="false" 
      AppendDataBoundItems="true" 
      DataSourceID="<%# PropertyInTheCodeBehind %>" 
      runat="server" />   

     [...] 
    </FilterTemplate> 

或者是有另一種方式來做到這一點? 我只想在代碼隱藏中訪問數據。

回答

1

而是定義一個方法或數組並將其傳遞給組合的DataSource屬性。這裏有幾個例子:

<telerik:GridBoundColumn [...]> 
    <FilterTemplate> 
     <telerik:RadComboBox 
      ID="filter" 
      AutoPostBack="false" 
      AppendDataBoundItems="true" 
      DataSource="<%# (new string[] { "Item1", "Item2", "Item3", "Item4" }) %>" 
      runat="server" />   

     [...] 
    </FilterTemplate> 

<telerik:GridBoundColumn [...]> 
    <FilterTemplate> 
     <telerik:RadComboBox 
      ID="filter" 
      AutoPostBack="false" 
      AppendDataBoundItems="true" 
      DataSource="<%# GenerateComboSource() %>" 
      runat="server" />   

     [...] 
    </FilterTemplate> 

public string[] GenerateComboSource() 
{ 
    return (new string[] { "Item1", "Item2", "Item3", "Item4" }); 
}