Asp:repeater onclick event not working with Sifenity 4.1
Hi Team,
I am currently working with sitefinity 4.1 and i have created a user control which displays list of item in a Repeater control and onclick of that item, it will add the text to a Textbox control out side the Repeater control. i have integrated this user control in to sifenity 4.1.
Now i have created a new page using sitefinity 4.1 and add this user control in to that page, and browsed the page. The onclick event in the repeater control is not working.
below the code for the repeater.
<asp:Repeater ID="rptTags" runat="server" DataSourceID="sqldsTags"
OnItemDataBound="rptTags_ItemDataBound">
<ItemTemplate>
<asp:Button BackColor="Transparent" ID="btnTag" onClick="btnTag_Click" runat="server" Text='<%# Eval("TagValue") %>' BorderStyle="None" CssClass="sidebar-item-tag" />
</ItemTemplate>
</asp:Repeater>
<telerik:RadTextBox ID="rtbTagInput" CssClass="mtbTag" runat="server" Width="100%" />
code added in CS file
protected void btnTag_Click(object sender, EventArgs e)
Button btnTag = (Button)sender;
taglist = rtbTagInput.Text;
if (btnTag.BackColor == System.Drawing.Color.Yellow)
//remove tag from list
taglist = taglist.Replace(btnTag.Text, "").Trim();
else
//add tag to list
if (taglist == "")
taglist = btnTag.Text;
else
taglist += " " + btnTag.Text;
rtbTagInput.Text = taglist;
rptTags.DataBind();
i think we need to add the parameter EnableEventValidation="true" at top of the page.
can you please suggest how can i add this parameter while creating pages from sitefinity 4.1
Hello Shekar,
Could you check whether you enabled the view state of the page?
All the best,
Ivan Dimitrov
the Telerik team
Thanks for your quick response.
NO, EnableViewState is not enabled on the user control page, i think by default it will be true.
Thanks
Hi Team,
i have created a Test.aspx page and included the same user control with contains repeater control and button with in it, and onclick of the button event the functionality is working fine on this page, but when i use the same user control with page created using the sitefinity4.1, the page getting reloaded every time when i click on the button with in the repeater control and the click event method is not called.
can u please help me like what settings to be made over here for making the page not reloaded on button click with in the repeater control
Hello Shekar,
Try this code
template
<asp:Repeater ID="rptTags" runat="server" > <ItemTemplate> <asp:Button BackColor="Transparent" ID="btnTag" runat="server" Text="SomeText" BorderStyle="None" CssClass="sidebar-item-tag" /> </ItemTemplate></asp:Repeater>namespace SitefinityWebApp.Controls public partial class Test : System.Web.UI.UserControl protected void Page_Load(object sender, EventArgs e) rptTags.DataSource = TestSource(); rptTags.ItemDataBound += new RepeaterItemEventHandler(rptTags_ItemDataBound); rptTags.DataBind(); void rptTags_ItemDataBound(object sender, RepeaterItemEventArgs e) if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item) var btn = e.Item.FindControl("btnTag") as Button; if (btn != null) btn.Click += new EventHandler(btn_Click); void btn_Click(object sender, EventArgs e) public List<string> TestSource() var list = new List<string>(); for (int i = 0; i < 10; i++) list.Add("string item" + i); return list;