I am Stuck on following requirement with the present view of the
diagram
1-For the last node there i am populating the member information i want a)I want a handler on the parentNode (Sonia (231)) if i click on it then only this will show "Member Information" I uncheck then this will hide "Member Information"
2-can The "Member information"
aset to lineargradient and width equals to parent width so when the drop downlist falls this should be aligned with the parent node.
The IGoCollapsible interface only supports the notion of 1 collapsible button/action per node. So, you’ll just have to have a buttton that collapses/expands the member info and use IGoCollapsible for the other +/- button. Nothing that rules that out.
Want to make Member List Aligned with Parent node.
3. What alignment are you using?
llnk.MidLabel = MakeText(lStringMakeText2)
Public Shared Function MakeText(ByVal s As String) As GoText
Dim t As GoText = New App.RotatedText()
t.Alignment = GoObject.Middle
t.Text = s
t.Selectable = True
t.Editable = False
t.AutoResizes = False
Return t
End Function
Well, I don't know how you've put the parts together in this node, but it should be a simple matter of SetSpotLocation on the Member Info box to set it to a position relative to the blue rounded rect in your LayoutChildren.
I suspect the space in the link label is due to the fact that you're using Bezier. Try turning that off. If that's it, you'll have to override the LabeledLink's LayoutChildren if you want to continue using Bezier.
You could try setting GoLabeledLink.MidLabelCentered = true.
But if you really want it to be offset a little bit, you’ll need to override GoLabeledLink.PositionMidLabel to set the text’s Location (or Position) as you wish, depending on how much space you want and the direction/angle it’s going at.
/// /// Move the MidLabel to an appropriate location near the middle of the link. /// /// The label object. /// The start point of the middle segment of the link. /// The end point of the middle segment of the link. protected virtual void PositionMidLabel(GoObject lab, PointF a, PointF b) { PointF m = new PointF((a.X+b.X)/2, (a.Y+b.Y)/2); int spot = Middle; if (!this.MidLabelCentered) { if (a.X < b.X) { if (IsApprox(a.Y, b.Y)) spot = BottomCenter; else if (a.Y < b.Y) spot = BottomLeft; else spot = BottomRight; } else { if (IsApprox(a.Y, b.Y)) spot = TopCenter; else if (a.Y < b.Y) spot = TopLeft; else spot = TopRight; } } lab.SetSpotLocation(spot, m); }