AD
Administrator
Syncfusion Team
December 19, 2005 10:09 PM UTC
Hi Chris,
The Essential Diagram ControlNode type was failing to automatically create the child control for nodes for which the control data was being provided by the ControlNodeInfo event. In such cases it was the PropertyGrid''s attempt to display the child control''s properties that was forcing the control to get instantiated, and turning off the Browsable attribute was resulting in the child control not being created until a subsequent refresh.
We have added a fix for the problem, and the next version of Essential Diagram will include the fix. For the time being you can workaround the condition by forcing the ControlNode to create the child control from within your ControlNodeInfo event handler. The following code should give you an idea,
private void diagram1_ControlNodeInfo(object sender, Syncfusion.Windows.Forms.Diagram.ControlNodeEventArgs evtArgs)
{
if(evtArgs.EventInfo == ControlNodeEventInfo.GetChildControl)
{
if(evtArgs.Node.Parent is CustomListSymbol)
{
ControlNode ctrlnode = evtArgs.Node as ControlNode;
ctrlnode.ControlAssemblyName = typeof(ControlsGalore.Form1).Assembly.FullName;
ctrlnode.ControlClassName = "ControlsGalore.CustomListBox";
// Force the control to create itself
ctrlnode.CreateControl();
}
}
}
Thank you for bringing this problem to our attention.
Prakash Surendra
Syncfusion Inc.,
CC
Chris C
December 20, 2005 02:26 AM UTC
Hi Prakash,
Thanks once again for your quick response. The workaround you provided solved the problem.
What is the anticipated release date for the next version of Essential Diagram?
Chris