Hello, we recently upgraded some of our software from .NET Framework 4.8 to .NET 6. In doing so we discovered that a direct assembly reference to Infragistics4.Win.UltraWinChart.v22.1 is required for the UltraChart control rather than a NuGet package reference.
I've read that the UltraDataChart is newer than the UltraChart, but it appears that some of the unique things we're doing with the UltraChart might not be possible with the UltraDataChart.
Even though the UltraChart is no longer being developed, will it continue to be included and usable via direct assembly references for future versions of Ultimate UI for Windows Forms?
Hello and thank you for contacting Infragistics. UltraWinChart is no longer packages starting with .NET Core. It will always be included in our DLL library upon manual installation. Other than 3d chart is there anything else you are doing that perhaps we can help you achieve in the UltraDataChart?
Hi Michael, thanks for the quick response!
We're not using the 3d chart but we are doing a few other things that we haven't been able to figure out with the UltraDataChart. I'll attach a screenshot so you can see what I'm talking about, but here are the main things we're doing with the UltraChart:
I wouldn't be surprised if some of the above things are actually possible with the UltraDataChart, so if you have any suggestions I'd really appreciate it! Also if you would prefer that I create a separate thread for these questions just let me know and I'd be happy to do so.
Hello and thank you for following up.
1. Looks like a legend, are those values represented in the chart data? I believe it would be easier to just ad labels on top of the chart.
2. I am currently investigating this behavior.
3. You can use the new DashArray property to set on the series. If you are using a trendline on the series you can also add a Dash Array.
eg.
var lineSeries = new LineSeries { DataSource = t, ValueMemberPath = "Europe", XAxis = commonXAxis, YAxis = priceYAxis, Brush = new SolidColorBrush { Color = Color.MediumVioletRed }, IsHighlightingEnabled = true, IsTransitionInEnabled = false, DashArray = new Infragistics.Portable.Graphics.Media.DoubleCollection { 2, 2 }, TrendLineType = TrendLineType.LinearFit, TrendLineDashArray = new Infragistics.Portable.Graphics.Media.DoubleCollection { 2, 2 }, };
Hello Cavin,
To Summarize, let me know if anything is missing.
1. UltraChart is no longer available starting in .NET Core as a nuget package. The dll could be added manually but it hasn't been tested nor supported in this environment
2. Drawing static Annotations above series isn't available and considered a new product idea. You could hook the Paint event and try and draw a rectangle. This has never been done before
www.infragistics.com/.../ultradatachart---draw-outline-around-plot-area
3. High/Low appearances are done with two series with variations of brushes and thicknesses.
4. Dash Array support added
Thanks very much. Really happy to hear about the new DashArray property, I wasn't aware of that. Also good suggestion about using two series with different Brush settings. The labels could be tricky for our use case but I'll look into it.
I'll mark your initial response as the verified answer since that answered my original question about whether the UltraChart would continue to be included in future releases, but I also greatly appreciate your responses to my subsequent questions. Thanks Michael!
Here is a workaround for #2. Use two series with different Brush settings. This was previously discussed over on our wpf forum but it's principles are applicable here in Winforms.
https://ko.infragistics.com/community/forums/f/ultimate-ui-for-wpf/105073/different-colors-in-line-series-according-to-data-range-xamdatachart
Adding two series to show high/low. I did send over your screenshot to our team to see if there was something more simpler.