Page Index Toggle Pages: 1 Send TopicPrint
Normal Topic Several Issues (Read 5121 times)
Alvaro
Guest


Several Issues
Mar 30th, 2006 at 5:09pm
Print Post  
Hello.  I have several issues with the ActiveX control, which I hope you can address.  I'm using the latest version of the control and developing on Visual Studio 2005 with C#:
  • How do I show a border around the entire FlowChart control?
  • The scrollbars seem to always be shown on the FlowChart control, even if I call SetDocSize(0, 0, 0, 0).  Is there a way hide them and only have them indivually show up as necessary?
  • Is there a way to enable the mouse wheel to scroll the FlowChart control?
  • I'm using the LayeredLayout class to automatically layout my diagram using the Horizontal orientation.  Is there any way to tell it to layer my boxes (connected by arrows based on parent/child relationships) using a specific ordering criteria (like a datetime)?  In my case, I'd like the boxes to be shown from left to right based on their respective dates.  For example, if a parent box has 2 child boxes, the "newer" box would be automatically placed to the right of the older one to denote that it was created later.
  • When I create my arrows, I tell them to use the Bezier style.  However, the LayeredLayout class always shows them as straight lines with sharp bends.  Is there a way to show them as smooth Beziers?
  • I tried creating a User Control with the FlowChart control inside of it, but it's causing Visual Studio to crash!  It happens after I've built the control and then try to use it inside a form.  As soon as I resize or click in there, I get the following error message and then Visual Studio gets closed:

    The control AxFLOWCHARTLib.AxFlowChart has thrown an unhandled exception in the designer and has been disabled. 

    Exception:

    Attempted to read or write protected memory. This is often an indication that other memory is corrupt.


Thanks!
Alvaro
  
Back to top
 
IP Logged
 
Stoyo
God Member
*****
Offline


MindFusion support

Posts: 13230
Joined: Jul 20th, 2005
Re: Several Issues
Reply #1 - Mar 30th, 2006 at 5:28pm
Print Post  
Hi,

>> border around the entire FlowChart control

You could use ShowFocusFrame to display a border while the flowchart has focus. Or put the flowchart in some kind of panel control.

>> The scrollbars seem to always be shown

Try calling the HideScrollers method.

>> Is there a way to enable the mouse wheel

Handle the MouseWheel event and set ScrollY accordingly.

>> When I create my arrows, I tell them to use the Bezier style.  However, the LayeredLayout class always shows them as straight lines ...

LayeredLayout always resets the arrow.Style to Polyline. You might save the CtrlPtX/Y coordinates for an arrow and its Segments number, set its style to Bezier, restore Segments, and copy the saved point coordinates to every 4th bezier point. Interpolate every 2nd and 3d bezier point (which define the bend) point from the position of the adjacent points (through which the curve goes).

Stoyan
  
Back to top
 
IP Logged
 
Stoyo
God Member
*****
Offline


MindFusion support

Posts: 13230
Joined: Jul 20th, 2005
Re: Several Issues
Reply #2 - Mar 30th, 2006 at 5:58pm
Print Post  
I have created a FlowChartX-based user control in VS2003 and put it in an application form , works fine for me.
  
Back to top
 
IP Logged
 
Alvaro
YaBB Newbies
*
Offline



Posts: 8
Joined: Mar 30th, 2006
Re: Several Issues
Reply #3 - Mar 30th, 2006 at 6:44pm
Print Post  
Quote:
I have created a FlowChartX-based user control in VS2003 and put it in an application form , works fine for me.

Maybe it's a VS 20005 problem.  Have you tried it there?

Quote:
You could use ShowFocusFrame to display a border while the flowchart has focus. Or put the flowchart in some kind of panel control.

Fair enough.  I wish it were a property I could manipulate instead of having to place the control over a panel.

Quote:
The scrollbars seem to always be shown

Try calling the HideScrollers method.

I was more hoping they would be shown or hidden automatically.  HideScrollers makes them go away completely.  The default behavior has them showing regardless of the doc size and it's not until the control is resized by the user that they automatically show or hide.

Quote:
Handle the MouseWheel event and set ScrollY accordingly.

Got it to working, thanks.  It was a bit tricky.

Quote:
LayeredLayout always resets the arrow.Style to Polyline. You might save the CtrlPtX/Y coordinates for an arrow and its Segments number, set its style to Bezier, restore Segments, and copy the saved point coordinates to every 4th bezier point. Interpolate every 2nd and 3d bezier point (which define the bend) point from the position of the adjacent points (through which the curve goes).

Shocked  Thanks for the solution, but I think I'll pass.

Quote:
I'm using the LayeredLayout class to automatically layout my diagram using the Horizontal orientation.  Is there any way to tell it to layer my boxes (connected by arrows based on parent/child relationships) using a specific ordering criteria (like a datetime)?  In my case, I'd like the boxes to be shown from left to right based on their respective dates.  For example, if a parent box has 2 child boxes, the "newer" box would be automatically placed to the right of the older one to denote that it was created later.

This is the one that I'd really like your feedback on.  My boss is demanding this feature and I sure as hell would not want to have to go through the pain of laying out dozens of boxes manually.  Undecided

Thanks!
Alvaro
  
Back to top
 
IP Logged
 
Stoyo
God Member
*****
Offline


MindFusion support

Posts: 13230
Joined: Jul 20th, 2005
Re: Several Issues
Reply #4 - Mar 31st, 2006 at 7:01am
Print Post  
The control created in VS2003 works fine in a VS2005 form. I will now try creating a VS2005 user control.
  
Back to top
 
IP Logged
 
Stoyo
God Member
*****
Offline


MindFusion support

Posts: 13230
Joined: Jul 20th, 2005
Re: Several Issues
Reply #5 - Mar 31st, 2006 at 7:17am
Print Post  
Yep, that one crashes. The error comes from the wrapper assembly VS generated for FlowChartX. If you have VS2003 around, probably you can use it to create the user control.
  
Back to top
 
IP Logged
 
Stoyo
God Member
*****
Offline


MindFusion support

Posts: 13230
Joined: Jul 20th, 2005
Re: Several Issues
Reply #6 - Mar 31st, 2006 at 7:22am
Print Post  
Unfortunately the LayeredLayout does not let you control the order of nodes in layers. You can do that only in the TreeLayout by setting the order of arrows in the box.OutgoingArrows collection.

Stoyan
  
Back to top
 
IP Logged
 
Page Index Toggle Pages: 1
Send TopicPrint