Fill Calendar Panel on combobox selection

  1. #1

    Fill Calendar Panel on combobox selection

    Dear Sir,

    When I Fill calender panel on page_load, it is working fine.

    But when I try to fill calender panel on combobox selection, not display any data on calender panel.

    Page_load event code
      protected void Page_Load(object sender, EventArgs e)
        {
    if (!X.IsAjaxRequest)
            {
               this.CalendarPanel1.EventStore.Events.AddRange(Data.Events);
            }
    }
    On combobox select event
     protected void GetCalendarDetails(object sender, DirectEventArgs e)
        {
           this.CalendarPanel1.EventStore.Events.AddRange(Data.Events);
    
            X.Msg.Notify("Message", "Event Clicked").Show();
        }

    Thanks
    Rupesh
  2. #2
    Hi,

    Please replace:
    this.CalendarPanel1.EventStore.Events.AddRange(Data.Events);
    with
    this.CalendarPanel1.EventStore.DataSource = Data.Events;
    this.CalendarPanel1.EventStore.DataBind();
    within the DirectEvent handler.
  3. #3
    Hi Daniil,

    Thanks For quick response.

    Quote Originally Posted by Daniil View Post
    Please replace:
    this.CalendarPanel1.EventStore.Events.AddRange(Data.Events);
    with
    this.CalendarPanel1.EventStore.DataSource = Data.Events;
    this.CalendarPanel1.EventStore.DataBind();
    within the DirectEvent handler.
    When I replace above code in my application. I am getting following error.


    evt[M.StartDate.name] is null
    [Break On This Error]     
    
    ...ventMappings,evStart=(evt.data?evt.data[M.StartDate.name]:evt[M.StartDate.name])...

    When I used AddRange on page load, it is working fine. but when I used datasource on page load I am getting above error.

    Thanks
    Rupesh
    Last edited by Daniil; Mar 27, 2012 at 7:08 AM. Reason: Please use [CODE] tags
  4. #4
    but when I used datasource on page load I am getting above error.
    I suggested to call DataBind within a DirectEvent handler only.

    Please provide a full sample to reproduce the problem.
  5. #5
    Hi Danil

    Here is the sample code.

    aspx page code
    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="MonthCalendarNew.aspx.cs" Inherits="ExtNetCalendar_MonthCalendarNew" %>
    <%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head id="Head1" runat="server">
        <title>Calendar - Ext.NET Examples</title>
        
        <ext:ResourcePlaceHolder ID="ResourcePlaceHolder1" runat="server" Mode="Style" />
        <link rel="stylesheet" type="text/css" href="main.css" />
        
        <ext:ResourcePlaceHolder ID="ResourcePlaceHolder2" runat="server" Mode="Script" />
        <script type="text/javascript" src="common.js"></script>
        
        <style type="text/css">
            .ext-color-4,
            .ext-ie .ext-color-4-ad,
            .ext-opera .ext-color-4-ad {
    	        color: #7F0000;
            }
            .ext-cal-day-col .ext-color-4,
            .ext-dd-drag-proxy .ext-color-4,
            .ext-color-4-ad,
            .ext-color-4-ad .ext-cal-evm,
            .ext-color-4 .ext-cal-picker-icon,
            .ext-color-4-x dl,
            .ext-color-4-x .ext-cal-evb {
    	        background: #7F0000;
            }
            .ext-color-4-x .ext-cal-evb,
            .ext-color-4-x dl {
                border-color: #7C3939;
            }
        </style>
    
      
    </head>
    <body>
        <form id="form2" runat="server">
        <ext:ResourceManager ID="ResourceManager1" runat="server" IDMode="Explicit" InitScriptMode="Linked" RemoveViewState="true" Namespace="CompanyX"  />
            
        <ext:Viewport ID="Viewport1" runat="server" Layout="Border">
            <Items>
                <ext:Panel ID="Panel1" runat="server" Height="55" Border="false" Region="North" Cls="app-header"
                    BodyCssClass="app-header-content">
                    <Items>
                        <ext:ComboBox runat="server" ID="cmbAthlete" DisplayField="AthleteName" LabelWidth="60"
                            ValueField="AthleteID" Width="250px">
                            <Store>
                                <ext:Store ID="Store2" runat="server">
                                    <Reader>
                                        <ext:JsonReader>
                                            <Fields>
                                                <ext:RecordField Name="AthleteID" />
                                                <ext:RecordField Name="AthleteName" />
                                            </Fields>
                                        </ext:JsonReader>
                                    </Reader>
                                </ext:Store>
                            </Store>
                            <DirectEvents>
                                <Select OnEvent="GetCalendarDetails">
                                </Select>
                            </DirectEvents>
                        </ext:ComboBox>
                    </Items>
                </ext:Panel>
                <ext:Panel ID="Panel3" runat="server" Title="..." Layout="Border" Region="Center"
                    Cls="app-center">
                    <Items>
                        <ext:Panel ID="Panel4" runat="server" Width="176" Region="West" Border="false" Cls="app-west">
                            <Items>
                                <ext:DatePicker ID="DatePicker1" runat="server" Cls="ext-cal-nav-picker">
                                    <Listeners>
                                        <Select Fn="CompanyX.setStartDate" Scope="CompanyX" />
                                    </Listeners>
                                </ext:DatePicker>
                            </Items>
                        </ext:Panel>
                        <ext:CalendarPanel ID="CalendarPanel1" runat="server" Region="Center" ActiveIndex="2"
                            Border="false">
                            <MonthView ID="MonthView1" runat="server" ShowHeader="true" ShowWeekLinks="true"
                                ShowWeekNumbers="true" StartDay="1" />
                            <Listeners>
                                <ViewChange Fn="CompanyX.viewChange" Scope="CompanyX" />
                                <EventClick Fn="CompanyX.record.show" Scope="CompanyX" />
                                <DayClick Fn="CompanyX.dayClick" Scope="CompanyX" />
                                <RangeSelect Fn="CompanyX.rangeSelect" Scope="CompanyX" />
                                <EventMove Fn="CompanyX.record.move" Scope="CompanyX" />
                                <EventResize Fn="CompanyX.record.resize" Scope="CompanyX" />
                            </Listeners>
                        </ext:CalendarPanel>
                    </Items>
                </ext:Panel>
            </Items>
        </ext:Viewport>
            
        </form>
    </body>
    </html>

    aspx.cs file code
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using Ext.Net;
    using System.Data;
    using System.Globalization;
    
    public partial class samplecode : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            
        }
    
        protected void GetCalendarDetails(object sender, DirectEventArgs e)
        {
    
            this.myCalendarPanel1.EventStore.DataSource = Data.Events;
            this.myCalendarPanel1.EventStore.DataBind();
    
            X.Msg.Notify("Message", "Event Clicked ").Show();
        }
    }
    I want to display calender data on combobox selection.

    Thanks
    Rupesh
  6. #6
    Dear Sir,

    r u able to produce the problem with given sample code?

    Thanks
    Rupesh
  7. #7
    Hi Daniil,

    Done

    thanks
    Rupesh
    Last edited by Rupesh; Mar 29, 2012 at 2:00 PM.
  8. #8
    I'm getting two errors:
    'ASP.work_aspx' does not contain a definition for 'myCalendarPanel1' and no extension method 'myCalendarPanel1' accepting a first argument of type 'ASP.work_aspx' could be found (are you missing a using directive or an assembly reference?)
    and
    The name 'Data' does not exist in the current context

Similar Threads

  1. Panel with Regions to Fill Div
    By mtrutledge in forum 1.x Help
    Replies: 2
    Last Post: Feb 09, 2012, 5:45 PM
  2. Problem to fill a combobox with store
    By feanor91 in forum 1.x Help
    Replies: 1
    Last Post: Nov 22, 2011, 1:12 PM
  3. [CLOSED] [1.0] Calendar and Clear Selection?
    By Timothy in forum 1.x Legacy Premium Help
    Replies: 5
    Last Post: Apr 20, 2011, 12:06 PM
  4. [CLOSED] Fill a combobox with an enum.
    By capecod in forum 1.x Legacy Premium Help
    Replies: 4
    Last Post: Oct 22, 2010, 2:06 PM
  5. Panel Dock Fill
    By Dgsoft.ru in forum 1.x Help
    Replies: 0
    Last Post: Jun 09, 2009, 4:14 PM

Posting Permissions