How can I retain custom position of label in WinForms Diagram?
How can I retain the custom position of the label while resizing the node?
We can retain the label's offset value using the SizeChanged event. While resizing a node, the SizeChanged event gets fired. Using the event, we can retain the label's position.
C#
// Adding Event Handler ((DocumentEventSink)diagram1.Model.EventSink).SizeChanged += new SizeChangedEventHandler(Form1_SizeChanged); outerRect.Labels.Add(new Syncfusion.Windows.Forms.Diagram.Label()); outerRect.Labels[0].Text = "Rectangle"; outerRect.Labels[0].Position = Position.Custom; outerRect.Labels[0].OffsetX = outerRect.Size.Width / 2; outerRect.Labels[0].OffsetY = outerRect.Size.Height; // Resizing void Form1_SizeChanged(SizeChangedEventArgs evtArgs) { outerRect.Labels[0].OffsetX = outerRect.Size.Width / 2; outerRect.Labels[0].OffsetY = outerRect.Size.Height; }
VB
'' Adding Event Handler AddHandler (CType(diagram1.Model.EventSink, DocumentEventSink)).SizeChanged, AddressOf Form1_SizeChanged outerRect.Labels.Add(New Syncfusion.Windows.Forms.Diagram.Label()) outerRect.Labels(0).Text = "Rectangle" outerRect.Labels(0).Position = Position.Custom outerRect.Labels(0).OffsetX = outerRect.Size.Width / 2 outerRect.Labels(0).OffsetY = outerRect.Size.Height '' Resizing Private Sub Form1_SizeChanged(ByVal evtArgs As SizeChangedEventArgs) outerRect.Labels(0).OffsetX = outerRect.Size.Width / 2 outerRect.Labels(0).OffsetY = outerRect.Size.Height End Sub
Conclusion
I hope you enjoyed learning about how to retain the custom position of a label in WinForms Diagram.
You can refer to our WinForms Diagram feature tour page to know about its other groundbreaking feature representations. You can also explore our WinForms Diagram documentation to understand how to create and manipulate data.
For current customers, you can check out our components from the License and Downloads page. If you are new to Syncfusion®, you can try our 30-day free trial to check out our other controls.
If you have any queries or require clarifications, please let us know in the comments section below. You can also contact us through our support forums, Direct-Trac, or feedback portal. We are always happy to assist you!