Two questions

My first question is this:
Using GoDiagram for the web, how do I enable the user to right-click on diagram(chart) and save the image? I thought the “Allowcopy” attribute would be the obvious choice but, that seems to have no effect (or at least, not the effect I want). Is it possible to copy the image, so it can be pasted somewhere else?

Second question:
Back in August, I created this thread:

It describes how I was creating a goview from within an XSLT file, and that everything was working well.
However, I have discovered that everything isn’t working.
I was using this code:

GoView1.DataRenderer.LabeledNodeSingleClick = “NodeClicked(‘Display.aspx’)”;

to create a nodeclicked event but, I can’t seem to get it to work anymore. I assume it is an issue with the Page.ParseControl() functionality I am using, which is described in my previous post. Have you seen any problems related to this from other users?

When I was creating views in a more standard way, the nodeclicked events were working well.

Do you have any suggestions as to how I might debug this?

Thanks for any advice you can give.

Because we’re handling the mouse over the image, you don’t get the default browser context menu that would let you do a “Copy to clipboard” of the image. So, could you add your own context menu item that ran some javascript to copy the image to the clipboard? The answer is apparently no… for security reasons, you can’t put stuff in the clipboard from script.



but… this page: http://www.developerfusion.com/tools/convert/csharp-to-vb/ has a “copy to clipboard” link ? not sure how that works.

question 2:



Have you set a breakpoint in your javascript at NodeClicked?

the NodeClicked event never fires (I put an alert(‘made it this far’); line at the beginning of the function, and it never ran).

I need to do something else this morning, then I will get back on these issues. I have got to figure out a way to allow users to copy the images, or save them some how.

Thanks for your responses.

ok, I have been researching this further, but I am still stumped.

I have been comparing my code that does not work (in a new project written in C#) against an old project, written in VB.NET, that does work.

I haven’t found anything that would point to a problem.

One thing I have noticed is that, in the new project, if I set AutoEventWireup=“false”, then the GoView is not created on the page. If I set AutoEventWireup back to “true”, all my initialization code runs as it should.

The AutoEventWireup attribute of the aspx page in the VB.NET project is set to “false”, and it works just fine there.

More Info: I have written a custom node class that overrides the GetPartInfo method. That code runs without error when the control is loaded.

The GoView, when AutoEventWireup is set to “true”, looks great in the web page, so the initialization code is working just fine but, no events will work (the cursor does not change to a pointer when I mouse over a node, as it should).

Any advise as to possible techniques for debugging this?

Thanks for whatever you can suggest.

Disregard the bit about AutoEventWireup

I don’t think that is not relevant to the problem, and I have figured out the reason for the different behavior between the old and new projects. In the old project, the control is initialized in a function that is expressly called by the parent object, so no page events are needed. In the new implementation, the page_load event calls the initialization code so, AutoEventWireup is necessary to hook up the Page_Load event.

So, that is working like it should.

If you use IE, and enable script debugging in Internet Options, then set s breakpoint at this line in GoWeb.js



img.goSE.src = pg + ‘?GoViewData=’ + img.goID + ‘&gp=’ + img.goP + ‘&go=’ + img.goC;



and step twice (through the end of the goReloadData), you will see the script generated by the DataRenderer.