This is a migrated thread and some comments may be shown as answers.

Issue with RadMonthYearCalendar on Master page banner

3 Answers 100 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Neetha
Top achievements
Rank 1
Neetha asked on 13 May 2014, 09:37 PM
Hi,

I added RadMonthCalendar on Master page banner
 <telerik:RadMonthYearPicker ID="RadMonthYearPicker" runat="server" OnSelectedDateChanged="RadMonthYearPicker_SelectedDateChanged" AutoPostBack="true">
trying to add selected chang event in child pages, but getting error: (Cannot implicitly convert type 'System.EventHandler' to 'Telerik.Web.UI.Calendar.SelectedDateChanged EventHandler')

 Child page load:
 RadMonthYearPicker radMonthYear = (RadMonthYearPicker)this.Master.FindControl("RadMonthYearPicker");
                 radMonthYear.SelectedDateChanged += new EventHandler(RadMonthYearPicker_SelectedDateChanged);
                 year = radMonthYear.SelectedDate.Value.Year;
                 month = radMonthYear.SelectedDate.Value.Month;

protected void RadMonthYearPicker_SelectedDateChanged(object sender, EventArgs e)
        {
            RadMonthYearPicker rmy = (RadMonthYearPicker)sender;
           
           
            year = rmy.SelectedDate.Value.Year;
            month = rmy.SelectedDate.Value.Month;
            BindLabelData();
            GetData("Total");
            GetQuarterData("Total");
            BindData(1);
            
           
        }

Also getting error (No overload for 'RadMonthYearPicker_SelectedDateChanged' matches delegate 'System.EventHandler' )when i give like this:   protected void RadMonthYearPicker_SelectedDateChanged(object sender, Telerik.Web.UI.Calendar.SelectedDateChangedEventArgs e)

Please let me know how to proceed on this. Thanks

3 Answers, 1 is accepted

Sort by
0
Shinu
Top achievements
Rank 2
answered on 14 May 2014, 06:52 AM
Hi Neetha,

Unfortunately I couldn't replicate the issue at my end. Please have a look into the sample code snippet which works fine at my end.

MasterPage ASPX:
<telerik:RadMonthYearPicker ID="RadMonthYearPicker" runat="server" AutoPostBack="true">
</telerik:RadMonthYearPicker>

Content Page C#:
protected void Page_Load(object sender, EventArgs e)
{
    RadMonthYearPicker monthYearPicker = this.Master.FindControl("RadMonthYearPicker") as RadMonthYearPicker;
    monthYearPicker.SelectedDateChanged += new Telerik.Web.UI.Calendar.SelectedDateChangedEventHandler(monthYearPicker_SelectedDateChanged);
}
void monthYearPicker_SelectedDateChanged(object sender, Telerik.Web.UI.Calendar.SelectedDateChangedEventArgs e)
{
    int year = e.NewDate.Value.Year;
    int month = e.NewDate.Value.Month;
}

Let me know if you have any concern
Thanks,
Shinu.
0
Neetha
Top achievements
Rank 1
answered on 14 May 2014, 07:32 PM
Now i am not getting Error, Thanks. Also when changing the date on MonthYear calendar on master page, I am having following issue:
When date is changed, on change event i am reloading the radgrid with newer dates. I have a usercontrol inside the radgrid, on load usercontrol loads fine but not when i change the date:
 protected void RadMonthYearPicker_SelectedDateChanged(object sender, EventArgs e)
        {
           
RadMonthYearPicker rmy = (RadMonthYearPicker)sender;
            year = rmy.SelectedDate.Value.Year;
            month = rmy.SelectedDate.Value.Month;
            BindData(1);
//How to call UserControl BindValues method from selected datechange event(Usercontrol is inside the radgrid, i am calling the usercontrol to get the text on top of images in all the rows.)
}
radgrid: <ItemTemplate>
                           <uc1:ImageLabel ID="imgUC3" ColorValue='<%# DataBinder.Eval(Container.DataItem,"MfgService") %>' Text='<%# DataBinder.Eval(Container.DataItem,"ManufacturingValue") %>'   runat="server" /> 
                        </ItemTemplate>

usercontrol code:
 protected void Page_Load(object sender, EventArgs e)
        {            if (!IsPostBack)
            {                BindValues();    }
        }
 public void BindValues()
        {
            string imageurl = "~/Images/" + ColorValue + "Dot.png";
            divimg.Style["background-image"] = Page.ResolveUrl(imageurl);
            divimg.Style["background-repeat"] = "no-repeat";
            divimg.Style["background-position"] = "center";
            divimg.Style["height"] = "30px";

            if (Text == "")
            {
                label.Visible = false;
            }
            else
            {
                label.Visible = true;
                label.Text = Text;
            }
        }
Please let me know. Thanks




0
Shinu
Top achievements
Rank 2
answered on 15 May 2014, 05:05 AM
Hi Neetha,

Please try the following C# code to access the control inside the UserControl page, which is inside the RadGridTemplateColumn.

C#:
void monthYearPicker_SelectedDateChanged(object sender, Telerik.Web.UI.Calendar.SelectedDateChangedEventArgs e)
{
    RadGrid grid = this.Master.FindControl("RadGrid") as RadGrid;
    foreach (GridDataItem item in grid.Items)
    {
        //accessing the usercontrol inside the template column of radgrid
        UserControl control = (UserControl)item.FindControl("Image1") as UserControl;
        //accessing the control inside the usercontrol page
        RadBinaryImage binaryImage = (RadBinaryImage)control.FindControl("RadBinaryImage");
        //your code
    }
}

Please provide your full code if it doesn't help.
Thanks,
Shinu.
Tags
Grid
Asked by
Neetha
Top achievements
Rank 1
Answers by
Shinu
Top achievements
Rank 2
Neetha
Top achievements
Rank 1
Share this question
or