Custom Task Field is Not Showing up in the TreeView

3 posts, 0 answers
  1. Binal
    Binal avatar
    2 posts
    Member since:
    Aug 2015

    Posted 21 Aug 2015 Link to this post

    Hello,

     I have added One Custom Task Field 'SrNo' as object datatype with respect to demo project given here. I have not used EntityFramework. I am Binding RadGantt's Datasource and DependenciesDataSource simply on Page_Load Event.

    To add new Task Field below is the code I have written

    public class CustomGanttTaskFactory : ITaskFactory
      {
          Task ITaskFactory.CreateTask()
          {
              return new CustomTask();
          }
      }
     
      public class CustomTask : Task
      {
          public CustomTask()
              : base()
          {
          }
     
          public object SrNo
          {
              get { return (object)(ViewState["SrNo"] ?? ""); }
              set { ViewState["SrNo"] = value; }
          }
     
          protected override IDictionary<string, object> GetSerializationData()
          {
              var dict = base.GetSerializationData();
              dict["SrNo"] = SrNo;
              return dict;
          }
     
          public override void LoadFromDictionary(System.Collections.IDictionary values)
          {
              base.LoadFromDictionary(values);
     
              SrNo = values["SrNo"];
          }
      }

    Page_Load Event:

    protected void Page_Load(object sender, EventArgs e)
       {
           List<ITask> newFinalTask = new List<ITask>();
           List<IDependency> FinalDependency = new List<IDependency>();
           newFinalTask.Add(new CustomTask { ID = 1, SrNo = "1", OrderID = 1, ParentID = null, Title = "A", Start = new DateTime(2015, 01, 10, 0, 0, 0), End = new DateTime(2015, 01, 19, 23, 59, 59), PercentComplete = 0.60M, Expanded = false, Summary = true });
           newFinalTask.Add(new CustomTask { ID = 2, SrNo = "", OrderID = 2, ParentID = 1, Title = "A1", Start = new DateTime(2015, 01, 10, 0, 0, 0), End = new DateTime(2015, 01, 15, 23, 59, 59), PercentComplete = 0.60M, Expanded = false });
           newFinalTask.Add(new CustomTask { ID = 3, SrNo = "", OrderID = 3, ParentID = 1, Title = "A2", Start = new DateTime(2015, 01, 16, 0, 0, 0), End = new DateTime(2015, 01, 19, 23, 59, 59), PercentComplete = 0.60M, Expanded = false });
           newFinalTask.Add(new CustomTask { ID = 4, SrNo = "2", OrderID = 4, ParentID = null, Title = "B", Start = new DateTime(2015, 01, 20, 0, 0, 0), End = new DateTime(2015, 01, 31, 23, 59, 59), PercentComplete = 0.60M, Expanded = false, Summary = true });
           newFinalTask.Add(new CustomTask { ID = 5, SrNo = "", OrderID = 5, ParentID = 4, Title = "B1", Start = new DateTime(2015, 01, 20, 0, 0, 0), End = new DateTime(2015, 01, 31, 23, 59, 59), PercentComplete = 0.60M, Expanded = false });
     
           FinalDependency.Add(new Dependency { ID = 1, PredecessorID = 1 ,SuccessorID = 4, Type = DependencyType.FinishStart });
     
           RadGantt1.DataSource = newFinalTask;
           RadGantt1.DependenciesDataSource = FinalDependency;
       }

     

    Design Page:

    <telerik:RadGantt runat="server" ID="RadGantt1"
        Enabled="true"
        ReadOnly="True"
        AllowSorting="False">
     
        <DataBindings>
            <TasksDataBindings IdField="ID" TitleField="Title" StartField="Start" EndField="End"
                PercentCompleteField="PercentComplete" OrderIdField="OrderID" SummaryField="Summary" ParentIdField="ParentID"  />
            <DependenciesDataBindings IdField="ID" PredecessorIdField="PredecessorID"
                SuccessorIdField="SuccessorID" TypeField="Type" />
        </DataBindings>
     
        <CustomTaskFields>
            <telerik:GanttCustomField PropertyName="SrNo" ClientPropertyName="SrNo"/>
        </CustomTaskFields>
     
        <Columns>
            <telerik:GanttBoundColumn DataField="ID" HeaderText="ID" AllowEdit="false" AllowSorting="false" Width="50px"></telerik:GanttBoundColumn>
            <telerik:GanttBoundColumn DataField="SrNo" HeaderText="Sr.No." AllowEdit="false" AllowSorting="false" Width="50px" UniqueName="SrNo"></telerik:GanttBoundColumn>
            <telerik:GanttBoundColumn DataField="Title" HeaderText="ACTIVITY" AllowEdit="false" AllowSorting="false"></telerik:GanttBoundColumn>
            <telerik:GanttBoundColumn DataField="Start" HeaderText="START" DataFormatString="dd/MM/yyyy" AllowEdit="false" AllowSorting="false" Width="80px"></telerik:GanttBoundColumn>
            <telerik:GanttBoundColumn DataField="End" HeaderText="END" DataFormatString="dd/MM/yyyy" AllowEdit="false" AllowSorting="false" Width="80px"></telerik:GanttBoundColumn>
            <telerik:GanttBoundColumn DataField="PercentComplete" HeaderText="% COMPLETED" AllowEdit="false" AllowSorting="false"></telerik:GanttBoundColumn>
        </Columns>
     
    </telerik:RadGantt>

    But it is not Displaying Data in Sr.No. Field. Below Attached is the output Image.

    Please help me with what is wrong with my code.

     

     

  2. Binal
    Binal avatar
    2 posts
    Member since:
    Aug 2015

    Posted 24 Aug 2015 in reply to Binal Link to this post

    Got it done by changing ClientPropertyName property of CustomTaskFields.

    <CustomTaskFields>
            <telerik:GanttCustomField PropertyName="SrNo" ClientPropertyName="SrNo"/>
    </CustomTaskFields>​

  3. UI for ASP.NET Ajax is Ready for VS 2017
  4. Binal
    Binal avatar
    2 posts
    Member since:
    Aug 2015

    Posted 24 Aug 2015 in reply to Binal Link to this post

    Sorry, here is the change of ClientPropertyName property of CustomTaskFields.
    <CustomTaskFields>
            <telerik:GanttCustomField PropertyName="SrNo" ClientPropertyName="srNo"/>
    </CustomTaskFields>​
Back to Top