The easiest way to do this will be to use a custom resizing service and just check if there's a TextShape in the currently resized shapes:
Point CalculateNewDelta(Point newPoint)
var newDelta =
var textShapes =
.resizingItems.Any(i => i
Point(newDelta.X, textShapes ? 0 : newDelta.Y);
I've attached a sample project demonstrating this so you could test it and see if this is what you're looking for.
Check out the Telerik Platform - the only platform that combines a rich set of UI tools with powerful cloud services to develop web, hybrid and native mobile apps.