Background Image

Knowledge base articles about
Project Management Library WPF 3.5

Search DlhSoft Team's blog for Project Management Library WPF 3.5

If you need to set up specific resource assignment allocation units (percent values) for items within task management grid controls (such as within GanttChartTaskListView control) use this syntax: ResourceName [PercentValue%] Example: John [75%]

We usually answer all received support requests (such as asked questions or reported issues) in at most 2 working days. Anyway, if you sent us questions or issues within an e-mail message delivered to our e-mail address, and haven't yet answered after that period, it's possible that one of the following situations has occurred: The message has been filtered to our Junk Mail folder…

How can we set the background of the Gantt Chart area of the components within Gantt Chart Library for WPF or Project Management Library for WPF? You should set the WorkingTimeBackground and NonworkingTimeBackground properties of the control, representing the brushes to use for paiting the working and nonworking time intervals within the Gantt Chart area.

I am not able to convert specific C# sample applications, such as Bar Templating sample, to Visual Basic®. Can you help? We have manually converted the Bar Templating sample application for GanttChartTaskListView control (within Gantt Chart Library, using build 4.0.0) to Visual Basic®: Gantt Chart Bar Templating Visual Basic® sample.

The Bar Templating sample applications included with the product are using WPF attached properties to add special bar templating information to TaskItem objects (DependencyObject based). If you data bind the control ItemsSource to plain objects or to a rows in a DataTable/DataView, you are unable to use attached properties. To be able to customize the standard task bar template without using a…

In order to set the item (row) height within a component from Gantt Chart Library for WPF or Project Management Library for WPF you will need to set ItemHeight property values and optionally also BarHeight, BarMargin, and BarVerticalAlignment property values, at the control level (or at the item level, by using the similar attached properties for the appropriate control, such as G…

In order to cancel NewTask or NewPredecessor event within Gantt Chart Library for WPF or Project Management Library for WPF you should set the Cancel property value of the NewItemEventArguments object instance received as a paramter of your event handler to true.

Trying to build and run a component sample from one of the DlhSoft products, such as Hierarchical Data Library, Gantt Chart Library, or Project Management Library, an error is generated, similar to this: Unable to resolve type 'DlhSoft.Namespace.Type, DlhSoft.Assembly' What is the problem? You may have installed the product in a differen…

Our components, such as Hierarchical Data Library, Gantt Chart Library, or Project Management Library, have not been designed nor developed with direct COM or ActiveX accessibility (such as from within previous versions of Microsoft® Dynamics®/Navision) as a goal. However, they are able to be interfaced and accessed through COM and ActiveX based s…

Where can I find the default styles and templates for a DlhSoft component library, such as Hierarchical Data Library, Gantt Chart Library, or Project Management Library? The control styles archives (containing XAML resources for different available themes) can be found among other product sample applications (after the product overview sa…

Where can I find get started documentation for a DlhSoft component library, such as Hierarchical Data Library, Gantt Chart Library, or Project Management Library? General Documentation (including a Get Started section) can be found after you installed the trial version of the product, in Start menu / DlhSoft product menu / Documentation, …

Where can I find questions and answers (FAQ) for a DlhSoft component library, such as Hierarchical Data Library, Gantt Chart Library, or Project Management Library? Questions and Answers pages can be found after you installed the trial version of the product, in Start menu / DlhSoft product menu / Documentation, being presented as links …

Where can I find samples for a DlhSoft component library, such as Hierarchical Data Library, Gantt Chart Library, or Project Management Library? Sample applications can be found in the Samples Web page of the product (displayed within a table), available from the product information page menu. Alternatively, they can also be found after y…

If you have a schedule definition string and would like to dynamically create a schedule object represented by that string (for example, to set it as the Schedule property of a Gantt Chart control), you can use the approach presented below (note that ScheduleDefinitionManager is a static class available within DlhSoft.Windows.Data namespace, and hosted by DlhSoft.ProjectData.Core…

Can we use controls from DlhSoft component libraries within our own component library projects? Our components, such as Hierarchical Data Library, Gantt Chart Library, or Project Management Library, can be used (as clearly mentioned within the EULA documents) ONLY for developing applications (that have executable targets). Moreover, you …

In order to customize the look (i.e. style and template) of a control from Gantt Chart Library for WPF or Project Management Library for WPF, you can start by using the default control style (or template) value which you can obtain, in clear XAML, from the Generic.xaml file from our Gantt Chart Control Styles sample archive, and apply your own changes to it, for …

By design and by default, to-Finish dependency types generate before constraints (i.e. the dependent task cannot finish after the predecessor's start/finish). Sometimes, this may be inconsistent with your requirements, which might require after constraints for to-Finish dependency types (i.e. the dependent task cannot finish before the predecessor's start/finish). To show you how you can resolve t…

By design and by default, when the end user drags and drops task bars in the Gantt Chart area, dependency constraints are applied within a standard task property change strategy indicated below: Start property value of the dependent task is changed during the drag and drop operation execution; When Start changes, Finish property value is updated in order to preserve task duration; Start and finish…

If you need to define a custom schedule (specifying working and nonworking time for different days), time scale (displayed time headers), and/or timeline page (scrollable time interval) within Gantt Chart Library for WPF or Project Management Library for WPF, check the Custom Schedule, Custom Scale, and Custom Timeline sample applications for the control …

In order to use custom task identifiers or keys instead of the standard indexes and predecessor indexes within Gantt Chart Library for WPF or Project Management Library for WPF you need to define such custom properties at task item level and synchronize their values to the original properties used within databinding, and replace appropriate grid column bindings within the user int…

In order to customize the new task or new predecessor created through NewTask or NewPredecessor events within Gantt Chart Library for WPF or Project Management Library for WPF you should set the Item property value of the NewItemEventArguments object instance received as a paramter of your event handler to the custom new item you need. Furthermore, you can use the Paramet…

You can customize the position of the vertical splitter between the left grid and right chart views within Gantt Chart controls from Gantt Chart Library for WPF or Project Management Library for WPF by applying the appropriate Width properties to the node or entity list and Gantt Chart views, as shown within the Splitter Position sample applications available for each ListView bas…

Referring to Gantt Chart Library for WPF and/or Project Management Library for WPF, here are some clues to understand better both the architecture of the DlhSoft software components and how to use them with (or without) data binding: First of all, TaskManager class is a business logic provider (a different class, without any UI) for…

When you handle mouse events and you check the DataContext property of the original source element routed by the event within a Gantt Chart control from Gantt Chart Library for WPF or Project Management Library for WPF, you may find out that its type is not Task, but TimeInterval instead, when the task is a standard task and AreTaskInterruptionsVisible is set to true to display ta…

If you use a ListView based Gantt Chart control from Gantt Chart Library for WPF or Project Management Library for WPF, and you need to present date and time information for task values outside of the GridViewColumn.CellTemplate definitions (such as within a custom Edit Task dialog window), then instead of using the DateTimeBox control (that is pre-customized for showing d…

We dyanmically increase and header and/or item heights within chart-based list view controls of Gantt Chart Library for WPF or Project Management Library for WPF. However, decreasing them doesn't perform automatically on those components, because the minimum header height of a chart-based list view control is bound to the value of the ac…

Using a DlhSoft component library that you have purchased a license for, you’ll be able to develop as many applications as you wish, and distribute them royalty-free to your customers and other parties, to be run on any number of destination computers, with the exception of Web applications using ASP .NET components which you can only host and redistribute for hosting purposes only. DlhSoft compon…

If you need to define a custom column displaying and allowing the end user to edit a task duration in days in Gantt Chart Library for WPF or Project Management Library for WPF you can do it by using the following code (C#), applicable within our Custom Data Binding sample application: // Task class public class CustomTaskItem : INotifyPropertyChanged { …

This document describes the tehnical and legal limitations of DlhSoft component library licensing. By purchasing a DlhSoft component library development license: You are not allowed to develop and distribute your own component library products (targetted to developers) referencing DlhSoft libraries internally. You are allowed to develop such component libraries only for your own reuse in …

To view the the common steps to perform when you want to install and apply a recently purchased DlhSoft component library license file to your development computer(s) please read this article. A multi-project solution sample application, with licensing information applied (i.e. Licenses.licx file placed within the main project, Properties folder) is available for download. It was…

To drag and drop task assignment bars among resource rows in Schedule Chart controls from Gantt Chart Library for WPF or Project Management Library for WPF at runtime, you need to: Hover the assignment task bar you want to move; a dotted line will be displayed at the bottom of the task bar; Move the task bar to a different resource row (i.e. vertically…

The End User License Agreement (EULA) documents for DlhSoft products can be downloaded and read by using the links below: EULA for applications; EULA for .NET, Silverlight™, and UWP (WinRT) development components; EULA for ASP .NET development components; EULA for JavaScript® development components.

Trying to export a bitmap image from Gantt Chart list view controls within Gantt Chart Library for WPF or Project Management Library for WPF you may have found that the image quality may be lower when a large image is exported. The issue you have observed is occuring because to generate the output image the Gantt Chart list view controls use ne…

If you would like to save PDF files including Gantt Chart images exported from Gantt Chart Library for WPF or Project Management Library for WPF, you can use Aspose.PDF components from Aspose (a third party ISV). A sample application showing how you can perform this task (including commented C# source code) is available for download and…

If you would like to save PDF files including Gantt Chart images exported from Gantt Chart Library for WPF or Project Management Library for WPF, you can use PDF4NET components from O2 Solutions (a third party ISV). A sample application showing how you can perform this task (including commented C# source code) is available for download …

In order to force WPF to use a specific theme (skin), such as Aero, Luna, Royale, Classic, or Generic when using controls from Hierarchical Data Library for WPF, Gantt Chart Library for WPF, or Project Management Library for WPF you can use one of these approaches: Get the appropriate DlhSoft control style and template definitions for the specific theme you want to apply (extracti…

What is a Gantt Chart? A Gantt Chart is a bar chart that presents items (such as tasks in a project) horizontally aligned to a timeline (usually available as chart header scales), vertically positioning data either as a single bar or as multiple bars per row. Some Gantt charts may also show dependencies between items (i.e., predecessor links). What Gantt Chart component types does DlhSoft offer? A…

We use data binding to custom task data item objects within Gantt Chart Library for WPF or Project Management Library for WPF. How can we highlight critical tasks, as casting custom item objects to TaskItem (as indicated within the DlhSoft Critical Path sample application) wouldn't work? If your custom task data item class inherits from…

With .NET Framework 3.5 SP1 it is difficult to deploy WPF browser applications that include DlhSoft WPF controls on the Internet zone, because in order to be able to run properly, our components require full trust permissions. However, in order to be able to run a full trust WPF browser application on a client machine, the end user requires to manually set up the Web address of th…

If you would like to load data from Microsoft® Project® document files (.MPP) and present it using Gantt Chart Library for WPF or Project Management Library for WPF, you can use Aspose.Tasks components from Aspose (a third party ISV). A sample application showing how you can perform this task (including commented C# source code) is available for…

In order for the components within Gantt Chart Library for WPF or Project Management Library for WPF to be able to refresh their user interface when object property values change within your data bound custom task or other type of items, you need to make sure that you custom item class implements the INotifyPropertyChanged interface (as other standard controls require). To…

Since January 2013, DlhSoft updates the product build upgrade policy as indicated below: Currently, when DlhSoft customers need to use the most recent product builds after purchasing a product license, they can simply download and install the newest package from our Web site and are able to apply the original license file to the software even when it has been purchased a very long time ag…

If you purchase a license for a DlhSoft product version build (e.g. 3.1.9) of one of our component libraries (e.g. Gantt Chart Light Library), it will also: entitle you to obtain free resolutions for technical issues you discover and report to DlhSoft within the product during the guarantee period (see the product EULA); even after the guarantee period, DlhSoft will try to continue resol…

In order to manage input key shortcuts such as disabling built-in key shortcuts and/or defining custom key shortcuts for different commands in controls within Gantt Chart Library for WPF or Project Management Library for WPF you need to manage the InputBindings collection of the appropriate control instance. You can view an optional implementation example of the above (co…

Is there a maximum time interval duration value (used for example, as the maximum task duration) within Gantt Chart Library for WPF or Project Management Library for WPF? Yes, to improve performance, such a maximum duration values is defined within the Schedule object instances. By default it is set to about 2 years (730.5 days), but it can be modified by inheriting from the Sche…

Some customers have informed us about unexpected memory leaks occuring within components of Gantt Chart Library for WPF or Project Management Library for WPF in certain conditions. Most of the times the issue reports were false as the "leaks" were being caused by caching features, and other times the issues have been found underneath the controls themselves. However, we wo…

The standard WPF components from DlhSoft (such as those included in Gantt Chart Library) include extended support for developing client applications using the Model-View-ViewModel (MVVM) pattern (included by Prism guidance), by providing access to most of their features through two-way bindable dependency properties, built-in and custom commands, and routed events, whene…

Our components, such as Hierarchical Data Library, Gantt Chart Library, or Project Management Library, have NOT been designed nor developed with running on Mono project (on Linux operating systems) as a goal. Although they may be able to run on that platform (and the negative case is also possible), we do NOT support it. We recommend running our c…

Before continuing to the next steps that allow you to improve performance for the components in the main WPF libraries, to address performance issues, you should be notified that: We have developed a new set of Gantt Chart components for WPF (and Silverlight™) with less customizability, but significantly higher performance: Gantt Chart Light Library for Silverlight™/WPF; If you have a lic…

We use Gantt Chart controls within Gantt Chart Library for WPF or Project Management Library for WPF. How can we develop a Print Preview feature in our application, instead of simply executing the Print command? We offer a DocumentPaginator object for each Gantt Chart control included within our libraries (e.g. GanttChartTaskList…

Do the DlhSoft components within Gantt Chart Library for WPF or Project Management Library for WPF provide printing support? Yes, please review the source code of the Printing sample applications for the included controls. Where can I find sample applications?

For your reference, a class diagram (possibly partial, depending on the actual product that you use) indicating the generic project management logical entities and their relations is presented below:

Generally, you shouldn't need to refresh the user interface of our WPF or Silverlight™ controls manually, as they would automatically refresh themselves whenever the data changes, provided that the bound collections implement INotifyCollectionChange (or IBindingListView), request already fulfilled by ObservableCollection<T> (or BindingList<T>), and that collection item types properly implement INo…

How can we remove one of the two vertical scrollbars of composite Gantt Chart controls within Gantt Chart Library for WPF or Project Management Library for WPF? You should set the ScrollViewer.VerticalScrollBarVisibility property value to Hidden at the composite control level.

A set of GanttChartTaskListView control samples is available, showing how you can customize the user interface of Project Management Library or Gantt Chart Library components to get more similar to the application style of Microsoft® Project® 2010 (with the most recent product version): Milestone Dates sample: Shows how to display milestone dates in the Gantt Chart view of the…

If you want to customize assignment and resource tooltips within the ScheduleChartResourceListView and/or ScheduleChartView controls from Gantt Chart Library for WPF or Project Management Library for WPF, you need to define: GanttChartViewAssignmentTemplate and/or GanttChartViewItemTemplate (properties of the control). Examples are sho…

How can I customize the appearance of the current time vertical bar or highlight specific time intervals using vertical bar providers in Gantt Chart and relarted controls within Gantt Chart Library or Project Management Library? You can show vertical bars to highlight certain moments or time intervals in the chart area using a customized VerticalBarProviders collection se…

Is it possible to use custom task appearance (as indicated in Custom Appearance sample application) or task bar templating (as indicated in Bar Templating sample application) within the Gantt Chart control from Gantt Chart Library for WPF or Project Management Library for WPF data binding it to a collection of custom task item data obje…

If in your application you use controls oriented to displaying both tasks (GanttChartView or GanttChartTaskListView) and resources (ScheduleChartView or ScheduleChartResourceListView), and you want a way to synchronize the colors (appearance) of the task bars displayed within the two charts, you should set IsItemAppearanceApplied property to true …

Is it possible to have a parameter defined at the task level that would trigger the Gantt Chart control from Gantt Chart Library for WPF or Project Management Library for WPF to show task bars using different task bar colors? You need to set the attached property GanttChartView.StandardBarFill (of type Brush) for stan…

The tasks within Gantt Chart Library for WPF or Project Management Library for WPF are defined using these main timing related properties: Schedule: defines working and nonworking time for the task on the timeline (for example, Monday-Friday 8 AM - 4 PM is working time, each week, no holidays); if schedule is null for a specific task (default situation)…

In order to automatically get tasks selected within Gantt Chart Library for WPF or Project Management Library for WPF when the end user clicks anywhere on the task row, including within an edit control in the ListView, you should handle a the previou mouse left button down event and select the task bound to the event original source element in code behind. You can view a …

If in your application you use composite control instances (such as GanttChartTaskListView or ScheduleChartResourceListView), and set their timeline page values (i.e. the time interval that would be horizontally scrollable within the internal chart areas) using SetTimelinePage calls, for example, sometimes you might notice that immediately after the setting, the…

Our components, such as Hierarchical Data Library, Gantt Chart Library, or Project Management Library, have not been designed nor developed with unmanaged (non-.NET) code accessibility (such as from custom executable applications written using other tools) as a goal. However, they are able to be accessed through unmanaged code using .NET interoper…

Regarding DlhSoft development components, are there Visual Basic® sample applications available, too? Currently there are some Visual Basic® sample applications available for DlhSoft development components. They are specifically marked as "Visual Basic® sample" in the sample list. For your easy reference, Visual Basic® sample applications for the commonl…

ASP .NET, HTML5, and Silverlight™/WPF-based products are now available on our Web site: Gantt Chart Web Library for ASP .NET; Gantt Chart Hyper Library for HTML5; Gantt Chart Light Library for Silverlight™/WPF; Hierarchical Data Light Library for Silverlight™/WPF. Separately, note that you may also use WPF components from other products in your Web applications as they c…

Question: Why are there multiple Gantt Chart products available for sale from DlhSoft? For example: Gantt Chart Light Library for Silverlight/WPF, Gantt Chart Library for WPF, Project Management Library for WPF, Gantt Chart Library for Windows® Forms, etc. Answer: In short, we offer several Gantt Chart enabled component libraries because we have tried to carry out multiple incompatible customer re…