To prevent the behavior that you see, you can put another object (for example, a rectangle or line) in your constructor in the same place as your image, and occupy it in the same horizontal space as the image on the left.
When the image is hidden, this object will remain there and prevent the text box from moving on the right side.
I would save this object in the designer and set its color according to the background color (for example, white) at run time so that you would not see it.
I would also give it some descriptive name, for example, LineWhichPreventsTextBoxFromMovingWhenImageIsHidden, so that some future report maintainer would not accidentally delete it and thus cause a violation.
source share