I am using web user control (.ascx) in SharePoint Web part.
I am using two panels in web user control.
I have many controls in two panels.
I want to update some controls of second panel on event of contols in first panel and vice versa.
I also looked at the example given at
http://demos.telerik.com/aspnet-ajax/ajax/examples/manager/usercontrol/defaultcs.aspx
but, it not working.
Please help me.
ASCX CODE:
<%@ Control Language="C#" AutoEventWireup="true" Inherits="EIMS.RadTest, EIMS, Version=1.0.0.0, Culture=neutral, PublicKeyToken=9f4da00116c38ec5" %>
<%@ Register Assembly="Telerik.Web.UI, Version=2009.1.311.0, Culture=neutral, PublicKeyToken=29ac1a93ec063d92"
Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<telerik:RadTabStrip ID="RadTabStrip1" runat="server" MultiPageID="RadMultiPage1">
<Tabs>
<telerik:RadTab Text="First" ID="RadTabFirst" runat="server" >
</telerik:RadTab>
<telerik:RadTab Text="Second" ID="RadTabSecond" runat="server" >
</telerik:RadTab>
<telerik:RadTab Text="Third" ID="RadTabThird" runat="server" >
</telerik:RadTab>
</Tabs>
</telerik:RadTabStrip>
<telerik:RadMultiPage ID="RadMultiPage1" runat="server">
<telerik:RadPageView ID="RadPageView1" runat="server" Selected="true">
<telerik:RadAjaxPanel ID="RadAjaxPanel2" runat="server" >
<telerik:RadComboBox ID="RadComboBox1" runat="server" AutoPostBack="True" OnSelectedIndexChanged="RadComboBox1_SelectedIndexChanged" >
<Items>
<telerik:RadComboBoxItem Text="Rajesh1" Value="1"/>
<telerik:RadComboBoxItem Text="Rajesh2" Value="2"/>
<telerik:RadComboBoxItem Text="Rajesh3" Value="3"/>
</Items>
</telerik:RadComboBox>
<p/>
<asp:Label ID="Lable1" runat="server" Text="Lable1"></asp:Label>
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
</telerik:RadAjaxPanel>
</telerik:RadPageView>
<telerik:RadPageView ID="RadPageView2" runat="server">
RadPageView2
</telerik:RadPageView>
<telerik:RadPageView ID="RadPageView3" runat="server">
RadPageView3
</telerik:RadPageView>
</telerik:RadMultiPage>
<telerik:RadAjaxManagerProxy ID="AjaxManagerProxy1" runat="server">
<AjaxSettings>
<telerik:AjaxSetting AjaxControlID="RadComboBox1">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="RadTabStrip1" />
</UpdatedControls>
</telerik:AjaxSetting>
</AjaxSettings>
</telerik:RadAjaxManagerProxy>
Code Behind:
using
System;
using
System.Collections.Generic;
using
System.Web;
using
System.Web.UI;
using
System.Web.UI.WebControls;
using
Telerik.Web.UI;
namespace
EIMS
{
public class RadTest : System.Web.UI.UserControl
{
protected RadTab RadTabSecond;
protected RadTab RadTabThird;
protected RadTab RadTabFirst;
protected Label Lable1;
protected Button Button1;
protected RadComboBox RadComboBox1;
protected RadAjaxManager RadAjaxManager1;
protected RadMultiPage RadMultiPage1;
protected RadPageView RadPageView1;
protected RadPageView RadPageView2;
protected RadPageView RadPageView3;
protected RadTabStrip RadTabStrip1;
protected RadAjaxManagerProxy AjaxManagerProxy1;
protected void Page_Load(object sender, EventArgs e)
{
RadTabThird.Visible =
false;
RadTabSecond.Visible =
false;
}
protected void Button1_Click(object sender, EventArgs e)
{
Lable1.Text =
"in second panel";
RadComboBox1.Items.Add(
new Telerik.Web.UI.RadComboBoxItem(Convert.ToString("Rajesh" + (RadComboBox1.Items.Count + 1)), Convert.ToString(RadComboBox1.Items.Count + 1)));
}
protected void RadComboBox1_SelectedIndexChanged(object o, Telerik.Web.UI.RadComboBoxSelectedIndexChangedEventArgs e)
{
Lable1.Text = RadComboBox1.Text;
RadTabThird.Visible =
true;
RadTabSecond.Visible =
true;
}
}
}
Web Part Code:
using
System;
using
System.Runtime.InteropServices;
using
System.Web.UI;
using
System.Web.UI.WebControls;
using
System.Web.UI.WebControls.WebParts;
using
System.Xml.Serialization;
using
Microsoft.SharePoint;
using
Microsoft.SharePoint.WebControls;
using
Microsoft.SharePoint.WebPartPages;
using
Telerik.Web.UI;
namespace
EIMS
{
[
Guid("2a14a7a4-4ef6-4b1a-b698-4d0f66719d34")]
public class RadPanelTest : System.Web.UI.WebControls.WebParts.WebPart
{
private Control _childControl = null;
private ScriptManager _AjaxManager;
private RadAjaxManager RadAjaxManager1;
public RadPanelTest()
{
}
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
_AjaxManager =
ScriptManager.GetCurrent(this.Page);
if (_AjaxManager == null)
{
_AjaxManager =
new ScriptManager();
_AjaxManager.EnablePartialRendering =
true;
_AjaxManager.AsyncPostBackTimeout = 120;
Page.ClientScript.RegisterStartupScript(
typeof(RadPanelTest), this.ID, "_spOriginalFormAction = document.forms[0].action;", true);
if (this.Page.Form != null)
{
string formOnSubmitAtt = this.Page.Form.Attributes["onsubmit"];
if (!string.IsNullOrEmpty(formOnSubmitAtt) && formOnSubmitAtt == "return _spFormOnSubmitWrapper();")
{
this.Page.Form.Attributes["onsubmit"] = "_spFormOnSubmitWrapper();";
}
this.Page.Form.Controls.AddAt(0, _AjaxManager);
}
}
RadAjaxManager1 =
RadAjaxManager.GetCurrent(this.Page);
if (RadAjaxManager1 == null)
{
RadAjaxManager1 =
new RadAjaxManager();
this.Page.Form.Controls.AddAt(0, RadAjaxManager1);
}
}
protected override void CreateChildControls()
{
base.CreateChildControls();
_childControl = Page.LoadControl(
"/UserControl/RadTest.ascx");
if (_childControl != null)
Controls.AddAt(0, _childControl);
}
}
}