I just started working with gantt view, so I have some questions
Can we include multiple projects in ultraGanttView?
I want to use a List as datasource, actually i am working like this
ultraCalendarInfoGanttView.DataBindingsForProjects.BindingContextControl = this; ultraCalendarInfoGanttView.DataBindingsForProjects.DataSource = new ProjectManager().GetProjects();ultraCalendarInfoGanttView.DataBindingsForTasks.BindingContextControl = this;ultraCalendarInfoGanttView.DataBindingsForTasks.DataSource = new TaskManager().GetTasks();
But I didn't get any data in view, please help me to figure out this.
mayank164 said:Can we include multiple projects in ultraGanttView?
Our UltraCalendarInfo could conatins one or more Projects in the ProjectCollection, but UltraGanttView control could show only one project. So if you have two or more projects you should switch between projects. For example:
this.ultraGanttView1.Project = this.ultraGanttView1.CalendarInfo.Projects[2];
Could you please take a look in our online documentation about the binding
http://help.infragistics.com/Help/NetAdvantage/WinForms/2011.2/CLR2.0/html/WinGanttView.html
http://help.infragistics.com/Help/NetAdvantage/WinForms/2011.2/CLR2.0/html/WinGanttView_Using_WinGanttView.html
and let me know if you have any questions.
Regards
Thanks for considering this post also
I take the look of the link you given me, but in that tasks are added one by one can't we assign some data source,so that grid will populate all tasks and also get viewed in Gantt view
Thanks for reply.
Now can you tell me, how to use entity list as data source for projects and tasks.There is one thing also
I want to use cursor in drag mode,means I don't want to use scrollbar instead of it when I move cursor horizontally it will scroll the timeline section.
Hi,
mayank164 said:Now can you tell me, how to use entity list as data source for projects and tasks
Could you please take a look at the attached sample. I made small sample for you using this approach. Also take a look at the attached video file - Video 339 for details.
mayank164 said: I want to use cursor in drag mode,means I don't want to use scrollbar instead of it when I move cursor horizontally it will scroll the timeline section.
private void ultraGanttView1_MouseDown(object sender, MouseEventArgs e) { ultraGanttView1.Cursor = Cursors.Hand; } private void ultraGanttView1_MouseUp(object sender, MouseEventArgs e) { ultraGanttView1.Cursor = Cursors.Default; } int temp; private void ultraGanttView1_MouseMove(object sender, MouseEventArgs e) { int i; if (ultraGanttView1.Cursor == Cursors.Hand) { if (temp > e.X) i = 1; else i = -1; ultraGanttView1.EnsureDateTimeVisible(ultraGanttView1.TimelineSettings.VisibleDateTimeRange.StartDateTime.AddDays(i)); temp = e.X; } }
private void ultraGanttView1_MouseDown(object sender, MouseEventArgs e)
{
ultraGanttView1.Cursor = Cursors.Hand;
}
private void ultraGanttView1_MouseUp(object sender, MouseEventArgs e)
ultraGanttView1.Cursor = Cursors.Default;
int temp;
private void ultraGanttView1_MouseMove(object sender, MouseEventArgs e)
int i;
if (ultraGanttView1.Cursor == Cursors.Hand)
if (temp > e.X) i = 1;
else i = -1;
ultraGanttView1.EnsureDateTimeVisible(ultraGanttView1.TimelineSettings.VisibleDateTimeRange.StartDateTime.AddDays(i));
temp = e.X;
Please take a look at the second video file - Video 338 to see this behavior.
Let me know if you have any questions.
Thanks
But how we do update operation mainly for AllProperties column which save binary data.
One thing more, In Gantt View can't we show some details of project like project name etc.
mayank164 said:One thing more, In Gantt View can't we show some details of project like project name etc
mayank164 said:how we do update operation mainly for AllProperties column which save binary data
Let me know if you have any further questions.
Thanks,
I have problem with adapter update operation,Cell deactivating and TaskElementDragComplete event doesn't work properly. One case is
When I delete all the task database not reflecting it,because in task grid we have to click on some other row than these event raised otherwise not,but there is no other row to click.
I suppose that you are using ultraCalendarInfo1_AfterAppointmentAdded() event to update your database only for the fields that you bind to your UltraCalendarInfo. If you want to update your DB with data from your extra fields, just call update method of your TableAdapter (only for these fields) when you press a button from the win form that add a tasks.
mayank164 said: In database I have start date and end date not duration column,So how I show task by calculating duration?
If you have start and end date, so you could calculate the task`s duration. You could do this in your C# code or in your database. For example:
C# DateTime startDate = DateTime.Today; DateTime endDate = DateTime.Today.AddDays(10); TimeSpan diffDate = endDate.Subtract(startDate); MessageBox.Show("Days difference = "+ diffDate.Days.ToString()); SQL DECLARE @BegDate DATETIME DECLARE @EndDate DATETIME SET @BegDate = GETDATE() SET @EndDate = DATEADD(dd, 10, GETDATE()) PRINT DATEDIFF(dd, @BegDate,@EndDate) Let me know if you have any questions. Regards
C#
DateTime startDate = DateTime.Today;
DateTime endDate = DateTime.Today.AddDays(10);
TimeSpan diffDate = endDate.Subtract(startDate);
MessageBox.Show("Days difference = "+ diffDate.Days.ToString());
SQL
DECLARE @BegDate DATETIME
DECLARE @EndDate DATETIME
SET @BegDate = GETDATE()
SET @EndDate = DATEADD(dd, 10, GETDATE())
PRINT DATEDIFF(dd, @BegDate,@EndDate)
I'll explain you,I have a form to add task, in that form I have some extra field which do not allow null. I don't want that user enter value for field in gantt chart and there is no need to show in gantt chart so I didn't bind them with calendarInfo .now when user add task these fields also get initialized with some default data in datatable so I can insert task.
I think you understand.
I have one more query
In database I have start date and end date not duration column,So how I show task by calculating duration?
I`m not sure what is your scenario, but maybe you could handle ultraCalendarInfo1_AfterAppointmentAdded() event and using e.Appointment properties you could update your data table. I`m not sure where you are bind this table, but all available data in your UltraCalendarInfo will be represent in the UltraGanttView. Of course you could hide some columns from your task grid.
Let me know if you think that I misunderstood your scenario
This is alright.Also give the answers of second part of question
when task is added I want to initialize some columns with some values in data table only and don't want to show in tasks grid.