| aspx: <Columns> |
| <telerik:GridBoundColumn UniqueName="EmployeeNo" DataField="EmployeeNo" HeaderText="EmployeeNo" HeaderStyle-Width="200px"> |
| <FilterTemplate> |
| <telerik:RadComboBox ID="RadComboBox1" DataTextField="EmployeeNo" |
| DataValueField="EmployeeNo" Height="100px" AppendDataBoundItems="true" SelectedValue='<%# ((GridItem)Container).OwnerTableView.GetColumn("EmployeeNo").CurrentFilterValue %>' |
| runat="server" OnClientSelectedIndexChanged="EmployeeNoIndexChanged"> |
| <Items> |
| <telerik:RadComboBoxItem Text="All" /> |
| <telerik:RadComboBoxItem Text="000000" Value="000000"/> //add item in aspx |
| </Items> |
| </telerik:RadComboBox> |
| <telerik:RadScriptBlock ID="RadScriptBlock1" runat="server"> |
| <script type="text/javascript"> |
| function EmployeeNoIndexChanged(sender,args) { |
| var tableView=$find("<%# ((GridItem)Container).OwnerTableView.ClientID %>"); |
| tableView.filter("EmployeeNo",args.get_item().get_value(),"EqualTo"); |
| } |
| </script> |
| </telerik:RadScriptBlock> |
| </FilterTemplate> |
| </telerik:GridBoundColumn> |
| </Columns> |
| cs: protected void Page_Load(object sender, EventArgs e) |
| { |
| if (!Page.IsPostBack) |
| { |
| RadComboBox RadComboBox1 = this.FindControl("RadComboBox1") as RadComboBox; |
| RadComboBox1 = new RadComboBox(); |
| RadComboBoxItem item = new RadComboBoxItem(); |
| item.Text = "000001"; |
| item.Value = "000001"; |
| RadComboBox1.Items.Add(item); |
| RadComboBox1.DataBind(); |
| } |
I want to filter the grid by a RadComboBox.
I tried as demo (http://demos.telerik.com/aspnet-ajax/grid/examples/programming/filtertemplate/defaultcs.aspx) but RadComboBox in this demo binding data by DataSourceID and <asp:SqlDataSource>.
I want to bind data from aspx.cs in this way when first page load:
| RadComboBox1.Items.Add(item); |
| RadComboBox1.DataBind(); But I find that I can't bind data like this o_O ! <telerik:RadComboBoxItem Text="000000" Value="000000"/> // only can add item like this in aspx |
thanks!