Background Image

Knowledge base articles about
Silverlight

Search DlhSoft Team's blog for Silverlight

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…

DlhSoft can confirm that both applications and components run successfully on 64-bit Windows® platforms. Although installers set up software folders within the 32-bit Program Files, all our .NET assemblies have been built using Any CPU option, so that they are actually automatically just-in-time compiled appropriately on the 64-bit platforms (.NET Framework takes care of this oper…

To enable auto-scheduling behavior on GanttChartDataGrid or GanttChartView component of Gantt Chart Light Library for Silverlight™ and WPF, Gantt Chart Hyper Library for HTML5/JavaScript®, or Gantt Chart Web Library for ASP .NET, you may set AreTaskDependencyConstraintsEnabled property of settings.areTaskDependencyConstraintsEnabled field to true. When auto-scheduling is turned o…

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…

When you need to display multiple instances of the same control base type such as GanttChartDataGrid or ScheduleChartDataGrid from Gantt Chart Light Library you may find that the columns are actually applied only to one loaded instance. This behavior is caused by the fact that in order to allow developers to easily get started with our component we have …

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…

I initialize some tasks (GanttChartItem objects) within a Gantt Chart enabled control from Gantt Chart Light Library without setting any completion value, but at runtime I see some completion bars initialized. What happens? By default, GanttChartItem.CompletedFinish property is set to DateTime.Today. Therefore, if you initialize tasks to be displayed in t…

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…

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 …

How can I define a fully custom scale type, with custom header text items in Gantt Chart Light Library? You should set the ScaleType and/or HeaderContentFormat properties of the Scale object to Custom, and define its custom scale intervals and/or header text items in code behind (after applying template): <pdgcc:GanttChartDataGrid.Scales> <pd…

Software designers may use Expression Blend® to fully customize the XAML code for WPF and Silverlight™ components available within certain DlhSoft libraries. However, if you intend to open some component instances such as those available within our sample applications as design root objects in order to customize their settings using this tool, please be aware that…

Sometimes you want to display dependency lines as Bezier segments instead of straight lines and/or allow the end users to create item dependencies using drag and drop operations and delete them using context menu items when you use NetworkDiagramView component of Gantt Chart Light Library. To help you get started, we have prepared a Network Diagram depend…

Sometimes you want to display predecessors using a custom string format in the Predecessors column of GanttChartDataGrid component from Gantt Chart Light Library. To transform values from the expected format to your custom display time format you can use a WPF converter class. An PredecessorFormatConverter example class is available with full C# …

For the most common scenarios, you can customize the Gantt Chart task bars presented by the GanttChartView, GanttChartDataGrid, ScheduleChartView, and ScheduleChartDataGrid controls from Gantt Chart Light Library by defining values for StandardTaskTemplate, SummaryTaskTemplate, and MilestoneTaskTemplate properties, specifying the user interface to be lo…

If you need to customize the tree cell template of the DataTreeGrid control from Hierarchical Data Light Library or of the GanttChartDataGrid control from Gantt Chart Light Library you should be aware that they don't automatically merge the custom DataTemplates that you might specify as DataTreeGridColumn.CellTemplate and/or DataTreeGridColumn.CellEditTempl…

Silverlight™ and WPF do not include core DateTimePicker controls to be directly usable in CellEditTemplate definitions accepted by the DataGrid based components released by DlhSoft. However, you can the DatePicker control which allows selecting a date and then manually entering the time of day in the textbox, separated by a space. Moreover, we have a FinishDateConverter t…

How can I define a specific work schedule and/or limits for the displayed week and day in Gantt Chart Light Library? The work schedule and visible time limits can be set up using these properties: Working|Week|Start Visible|Day|Finish Any combination of the columns above is permitted, generating properties such as WorkingWeekStart, WorkingW…

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…

By default GanttChartDataGrid and GanttChartView controls from Gantt Chart Light Library use virtualization, which means that content template for chart items is actually applied and loaded only when the items get actually visible in the viewport, such as when the end user scrolls down the chart area to view those items. Sometimes, however, you may…

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…

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.

In my application (that references Gantt Chart controls from Gantt Chart Light Library) I have defined a CustomGanttChartItem object type inheriting from GanttChartItem adding custom properties to be displayed in the grid and/or referenced in custom task templates. However, I loading and saving Project XML files doesn't support loading and saving the custom item type and …

Although our Light Library components do not offer ItemsSource properties to address custom item collection data binding (being designed for performance), it is usually enough to apply the built-in TaskItemsConverter (or ResourceItemsConverter) to your own data collections to prepare GanttChartItem (or ScheduleChartItem) collections that can be directly set as component I…

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…

By default, summary values are automatically aggregated on parent tasks based on child tasks in Gantt Chart enabled controls within Gantt Chart Light Library. How can this behavior be disabled, and set up the parent tasks to be displayed as standard tasks in the chart area? You can disable the automatic summary value aggregation feature by setting GanttChartItem.I…

Gantt Chart Light Library includes the PertChartView control that can also be used in Windows® Forms applications, provided that you can use .NET Framework 4 (or a more recent version). A sample application is available showing how you can integrate lightweight WPF controls (including PertChartView) in your Windows® Forms products: Gantt Chart Light Library Windows® Forms I…

Gantt Chart Light Library includes sample applications showing the way we can hierarchically sort GanttChartItem objects based on their content (i.e. task name) when using the GanttChartDataGrid control, upon using an external ToggleButton. How can we update the code to hierarchically sort data based on specific properties and update user interface accordingly whe…

Gantt Chart Light Library includes only a WPF based sample application showing the way we can data bind the GanttChartDataGrid control to a database (Tasks table and its Predecessors relation). How can we data bind the control to a database from Silverlight™? Silverlight™ is a client side technology within a client-server architecture system, that also requires a Web serve…

GanttChartDataGrid component from Gantt Chart Light Library defines the AreIndividualItemHeightsAppied property that allows developers to configure specific ItemHeight values on specific GanttChartItem objects. However, because of an issue occuring inside the WPF based DataGrid control that the component internally uses, the actual data grid row presenters would …

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…

Asynchronous data loading mode is enabled by design and by default when you use components from Gantt Chart Light Library. However, some operations, such as LevelResources or SaveProjectXml require that all data is loaded in order to consider the entire project as data source; otherwise, when such operations are executed, they will consider only the actual…

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…

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…

If you need to set up mouse based panning besides the standard scrolling behavior of the Gantt Chart components within Gantt Chart Light Library, you may adapt and use this code (Silverlight™): GanttChartDataGrid.ApplyTemplate(); bool isPanning = false; double originalMouseX = 0, originalMouseY = 0, originalScrollX = 0, originalScrollY = 0; …

How can I define an overriding set of columns within a DataGrid-based control of Gantt Chart Light Library? You need to define a full column collection as the Columns property value: <pdgcc:GanttChartDataGrid.Columns> <pdgcc:DataGridColumnCollection> <hd:DataTreeGridColumn Header="Task"/> <dataControls:DataGridTextColum…

If you reinitialize the Items collection of the Silverlight™ based Gantt Chart components from Gantt Chart Light Library, you may notice that sometimes the reload operation runs slower than the initial load of a large data amount, although this issue doesn't occur with the same WPF based components and the same data amount. Based on our investigations, we have fo…

Dependening on the number of items loaded and displayed, a short time interval of low responsiveness may occur in the Gantt Chart controls when the end user clicks one of the extra horizontal scroll buttons (i.e. timeline page update buttons) to navigate to the past or to the future of a displayed project, or when the timeline page is dynamically changed from code within Gantt Chart Light…

By default, the printing behavior of Gantt Chart Light Library components is to split the output content into multiple pages based on the printable page area. However, sometimes you know that your data source and timeline page duration are both small, and you would like to implement an alternative printing behavior: printing all content of the component scaled up…

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…

Sometimes when you use components from Gantt Chart Light Library you may want to replace some resources used internally by the components, together with replacing component styles and templates using our Generic.xaml default definitions which, by the way, you can download from our Web site, both for Gantt Chart controls and for PERT Chart components (note…

We handle CollectionChanged and/or PropertyChanged events of items to save changes made by the end user to the underlying data using controls within Gantt Chart Light Library. However, we have found that these events occur several times, and therefore they are not appropriate for saving changes back to a server or database from inside the handler methods.…

While the WPF demo application allows the end user to export images from Gantt Chart Light Library components and save them as images files on their computer, in the Silverlight™ demo (i.e. Get Started sample) application we have only shown how you can export images from Gantt Chart Light Library components and present them within external Image elements. However, you can also save the image data …

The initial selection may not be highlighted in the view, and/or SelectionChanged event from a DataGrid-based control within Gantt Chart Light Library may occur twice when selection changes. To resolve these situations, you can use the internal DataGrid for setting selection and handle selection events; moreover, you should set the initial selection onl…

I need to set DependencyType and/or Tag properties of the new PredecessorItem object created when the end user performs a drag and drop operation to define a new dependency between two tasks (drawing a dependency line between two task bars) in the GanttChartDataGrid or GanttChartView control of Gantt Chart Light Library. You need to handle the CreatingDepe…

How can I highlight specific time intervals using vertical bars in Gantt Chart and relarted controls within Gantt Chart Light Library? You can show vertical bars to highlight certain time intervals in the chart area using a customized Scale object instance added to the Scales collection of the control, having the following properties values set: HeaderHeight: zero (the ps…

How can I specify a special day of the week as nonworking time within a Gantt Chart control from Gantt Chart Light Library? For example, usually at museums both Saturday and Sunday are working days, and only Monday is defined as nonworking time. The WorkingWeekStart and -Finish properties of the component are useful when the nonworking days are at…

At initialization time, task items are defined using these main timing related properties: Start: date and time value to start work; Finish: date and time value to finish work; if you need to compute it based on the Start value and an effort value, use the GetFinish method provided by the component instance: item.Finish = component.GetFinish(item.Start, effort); CompletedFinish: date and time val…

How can I define and display task interruptins within Gantt Chart Light Library controls? You need to provide some custom code and bar templating. Our Bar Templating sample application for GanttChartDataGrid control shows, among other features, how to display interrupted bars for tasks, based on custom collections of interruption objects.

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…

DlhSoft provides specific SharePoint® Web parts for these products (available as extra downloads): Gantt Chart Web Library. You can also use any of the ASP .NET, HTML5, or Silverlight™ controls within Gantt Chart Web Library, Gantt Chart Hyper Library, or Gantt Chart Light Library in a SharePoint® Web part. (For Silverlight™ components, you may use the Silverligh…

DlhSoft provides specific LightSwitch® extensions for these products (available as extra downloads): Gantt Chart Light Library. Microsoft® reference indicates that Silverlight™ (and recently, HTML5) components may be reused in LightSwitch® applications either as they are or wrapped up within specific custom components. You can also wrap the Silverlight™ components as LightSwitch® e…

Becuase of a known vertical scrolling issue of the core DataGrid control that our GanttChartDataGrid control reuses, we have decided to disable the vertical scroll bar of the chart area (right side) to avoid any visual inconsistences between the thumb heights of the vertical scroll bars, while continuing to synchronize the actual positions of the left and right panes internally. …

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…