Reputation: 3979
I meet are having difficulty in implementing a simple event "OnCheckedChanged" for control "checkBox" which is in a radCombobox. I found many examples on the net to write the event in Javascript but never in C#! Why? Is it impossible to generate this event in C#?
Here is my example :
<telerik:RadComboBox ID="RadComboBoxSelectedEntity" runat="server" AutoPostBack="false" EnableCheckAllItemsCheckBox="false" EmptyMessage="Tous" CheckedItemsTexts="DisplayAllInInput" CheckBoxes="true" width="300px"
AllowCustomText="true" DataTextField="name" DataValueField="name" HighlightTemplatedItems="true">
<ItemTemplate>
<asp:CheckBox runat="server" ID="CheckBox" Text='<%# DataBinder.Eval(Container, "Text") %>' OnCheckedChanged="checkedChangeCombobox" AutoPostBack="true" />
<asp:Label ID="lblSearchRef" runat="server" Text='<%# DataBinder.Eval(Container, "Text") %>' Visible="true" />
</ItemTemplate>
<CollapseAnimation Duration="200" Type="OutQuint" />
</telerik:RadComboBox>
And the Javascript event "OnCheckedChanged":
<script language="javascript" type="text/javascript">
function checkedChangeCombobox(sender, eventArgs) {
var item = eventArgs.get_item();
sender.set_text("You checked " + item.get_text());
}
</script>
But I need implement this in C# ! Like that:
protected void checkedChangeCombobox(object sender, EventArgs e)
{
CheckBox myCheckBoxes = sender as CheckBox;
string textChk = myCheckBoxes.Text;
}
But not working...
Upvotes: 0
Views: 3017
Reputation: 1622
You need to assign the check box event handler in the ItemDataBound event for the combo box, like so:
private void RadComboBoxSelectedEntity_ItemDataBound(object sender, Telerik.Web.UI.RadComboBoxItemEventArgs e)
{
((CheckBox)e.Item.FindControl("CheckBox")).CheckedChanged += checkedChangeCombobox;
}
Upvotes: 2