Facing few limitations with present version (2008 vol2). If there is a way to acheive these, request you to please explain the same:
1. Need to change the location of Legend box dynamically by the user over the chart area
2. Can the legend entries ( each entry for each series ) be placed side by side for each new chart layer added to the composite chart area instead of placing them horizontally
3. Is there any feature similar to --> when double clicked on any of the axis on the chart area, a menu strip opens to modify dynamically axis properties (like tickmark style, label spacing, axis line stroke etc,.). Right now I handled this by creating a custom control on chart control double click and providing all chart properties together in a grid view similar to windows property window
4. Are there any separate events like chart axis double click, chart title double click, legend box double click? instead handling only with chart double click
5. When changing axis labels font size, titles font size, legends font size, facing issue with the auto align of axis extent, chart titles extent. Part of the fonts either being clipped (when the font size is large) or extent is too much (when font size is small). Right now I handled this by adjusting the extents, when ever the font size is changed like first decreasing the chart area, then incresing the extent or decreasing to fit the increased or decresed font sizes, but wanted to avoid this to make the code more simple. Is there any property to set this (say to auto fit size) when ever the fonts size of titles, axis labels were changed
1. The Legend has Location, Margins, and SpanPercentage properties you can use to position it. If that's not enough, you can either create a composite chart (the Legends in the CompositeChart.Legends collection can be positioned using pixel or % coordinates), or custom draw a legend using the FillSceneGraph event.
2. This will happen only if there's not enough vertical space to stack the legend labels vertically. try setting Legend.BoundsMeasureType = Percent, and Bounds: x=0,y=0,width=100,height=10. you can also try adding Multiple legends side-by-side, one for each ChartLayer.
3. Sorry, we don't have any runtime configuration menus like that.
4. ChartDataClicked and ChartDataDoubleClicked are the only click events besides the ones inherited from Control. If you want to make the Axes raise that event, one way to do it is to handle the FillSceneGraph event (or add a custom layer), and add a Box primitive over the axis line, with settings to make it clickable:
myBox.Row = myBox.Column = 0;
myBox.ChartType = ultraChart1.ChartType;
myBox.Layer = e.ChartCore.GetChartLayer();
myBox.Caps = PCaps.HitTest | PCaps.Tooltip;
5. There is no feature to automatically set the axis extent.
Need small clarification:
--> I created a legend object and added to the Legends collection of composite chart. I could also position the legend location, but what I want is, the user should be able to select the legend box by a single mouse click by plaicng mouse over that, hold it, and can drag to any position within the chart area.
Is there any other method than fillscene graph event as is seems some complex and tricky. I want to avoid handling fill scene event
sorry, since this is not really a feature of the chart, FillSceneGraph is the only way to go. you can request it as a feature here: http://devcenter.infragistics.com/protected/requestfeature.aspx