AM
Ajeet M
Syncfusion Team
December 29, 2008 12:07 PM UTC
Hi Ricardo,
To change the Label of the node programmatically, please follow the steps below:
********
1. Assume you have a button to change the Label
2. In the click event you can type the code given below:
------
someNode.Labels[0].Text = "Some_Text_Here";
------
Where, "someNode" is the Node for which you need to change the Label.
********
Let me know if you shall need any further clarifications here.
Happy Coding!
- Ajeet
RG
Ricardo Gaona
December 29, 2008 12:54 PM UTC
I've tried the following:
1. C#:
protected void DiagramWebControl1_CallbackRefresh(object sender, Syncfusion.Web.UI.WebControls.Shared.CallbackEventArgs e)
{
Node node = DiagramWebControl1.Model.Nodes[e.CallbackArgument];
node.Labels[0].Text = "Some_Text";
}
and gives me an error: Error 23 'Syncfusion.Windows.Forms.Diagram.Node' does not contain a definition for 'Labels'
2. Javascript:
function EditText( ClickedNode )
{
node.Labels[0].Text = "Some_Text";
_sfDiagramWebControl1.Refresh(node.Name);
);
and nothing happens
AM
Ajeet M
Syncfusion Team
December 30, 2008 05:28 AM UTC
Hi Ricardo,
To get the desired functionality, please follow the steps below:
1. In the aspx source, type in the JavaScript for the OnClientNodeClick event as follows:
function NodeClick(node)
{
_sfDiagramWebControl1.Refresh(node.Node.Name);
}
2. Now, in the CS page, under the DiagramWebControl's CallBackRefresh() event handler method, type as follows:
void DiagramWebControl1_CallbackRefresh(object sender, Syncfusion.Web.UI.WebControls.Shared.CallbackEventArgs e)
{
Node node = DiagramWebControl1.Model.Nodes[e.CallbackArgument];
if (node != null)
{
ell = node as Ellipse;
ell.Labels[0].Text = "XYZ";
}
}
I am sure this will resolve your query. Let me know if you shall need any clarifications in this regard.
Happy Coding!
- Ajeet