We are having a bit of trouble with the annotation confinement feature in dotAnnotate 5.0g. It quickly became obvious that by allowing our users to have unlimited abilities to drag annotations around, we were going to run into problems with annotations becoming inaccessible in the client areas of the viewer. As a resolution to this problem, we set the AnnotationConfinement property to keep annotations within the bounds of the document area.
This has now solved the problem, but has potentially exposed another problem as a result. If we move an annotation in our viewer (either a newly created annotation or an existing one), and try to drag it outside the bounds of the document, the annotation stops at the edge but the mouse carries on into the grey client area. If the mouse button is released whilst the annotation is in this area, the annotation remains on the edge of the document as expected. However the AnnotationMoved() event isn't triggered in response, even though the annotation has moved from it's origin. If the document is closed and re-opened (which saves the annotations in their last-known positions), upon re-opening the dragged annotation has returned to it's original location prior to being dragged to the edge of the document.
Our VB.NET program is a follow-on from an existing VB6 program, and because dotAnnotate won't function with this we've had to devise a way to generate a file of annotation positions and properties that can be interpretted by both applications for backwards compatibility. As a result we have a number of objects in .NET which are continuously updated by the triggering of the various events. Due to the AnnotationMoved event not being triggered, the objects aren't being updated and therefore when the image is reloaded, any annotations which were dragged to the edge of the screen have suddenly reverted back to their original locations.
Could you shed any light on this please?
Thanks.