5 Answers, 1 is accepted
0
Hi Ralf,
I am afraid I do not understand your requirement. Can you please elaborate and can you share what do you mean with "zoom value"?
I am looking forward to your reply.
Regards,
Stefan
Telerik
I am afraid I do not understand your requirement. Can you please elaborate and can you share what do you mean with "zoom value"?
I am looking forward to your reply.
Regards,
Stefan
Telerik
Check out Telerik Analytics, the service which allows developers to discover app usage patterns, analyze user data, log exceptions, solve problems and profile application performance at run time. Watch the videos and start improving your app based on facts, not hunches.
0
Ralf
Top achievements
Rank 2
Iron
answered on 26 Aug 2014, 11:42 AM
Hi Stefan,
sorry for my short descroption:
With the Property "EnableZooming" i can enable the zoom functionality. With the mouse i can Change the Zoom at runtime. How can i set this zoom factor.
Greetings from Germany - Ralf
sorry for my short descroption:
With the Property "EnableZooming" i can enable the zoom functionality. With the mouse i can Change the Zoom at runtime. How can i set this zoom factor.
Greetings from Germany - Ralf
0
Hello Ralf,
Thank you for the clarification.
The zoom factor is internally calculated and there is no way for one to change it. However, you can disabled the embedded zooming functionality and implement it yourself. Here is how to do it on MouseWheel:
I hope that you find this information useful. Should you have any other questions, do not hesitate to contact us.
Regards,
Stefan
Telerik
Thank you for the clarification.
The zoom factor is internally calculated and there is no way for one to change it. However, you can disabled the embedded zooming functionality and implement it yourself. Here is how to do it on MouseWheel:
protected override void OnLoad(EventArgs e){ base.OnLoad(e); InitializeComponent(); AddPanorama(); radPanorama1.EnableZooming = false; radPanorama1.MouseWheel += radPanorama1_MouseWheel;}bool zoomedIn = false;void radPanorama1_MouseWheel(object sender, MouseEventArgs e){ if (e.Delta < 0 && this.zoomedIn) { ZoomOut(); } else if (e.Delta > 0 && !this.zoomedIn) { ZoomIn(e.Location); }}public void ZoomOut(){ if (!zoomedIn) { return; } radPanorama1.PanoramaElement.ScrollService.Stop(); radPanorama1.PanoramaElement.Capture = false; LayoutPanel currentLayout = this.GetCurrentLayout(); SizeF scale = new SizeF((float)this.Bounds.Width / currentLayout.Bounds.Width, (float)this.Bounds.Width / currentLayout.Bounds.Width); AnimatedPropertySetting scaleSetting = new AnimatedPropertySetting( RadElement.ScaleTransformProperty, new SizeF(1, 1), scale, 5, 20); scaleSetting.ApplyValue(currentLayout); SizeF offset = new SizeF(0, (this.Bounds.Height - currentLayout.Bounds.Height * scale.Height) / 2.0F); AnimatedPropertySetting offsetSetting = new AnimatedPropertySetting( RadElement.PositionOffsetProperty, currentLayout.PositionOffset, offset, 5, 20); offsetSetting.ApplyValue(currentLayout); this.zoomedIn = false; }public void ZoomIn(Point location){ if (zoomedIn) { return; } LayoutPanel currentLayout = this.GetCurrentLayout(); int offset = (int)(-location.X * 1.0F / currentLayout.ScaleTransform.Width + location.X); AnimatedPropertySetting scaleSetting = new AnimatedPropertySetting( RadElement.ScaleTransformProperty, currentLayout.ScaleTransform, new SizeF(1, 1), 5, 20); scaleSetting.RemoveAfterApply = true; scaleSetting.ApplyValue(currentLayout); AnimatedPropertySetting offsetSetting = new AnimatedPropertySetting( RadElement.PositionOffsetProperty, currentLayout.PositionOffset, new SizeF(offset, 0), 5, 20); offsetSetting.RemoveAfterApply = true; offsetSetting.AnimationFinished += new AnimationFinishedEventHandler(zoomInOffset_AnimationFinished); offsetSetting.ApplyValue(currentLayout); this.zoomedIn = true;}void zoomInOffset_AnimationFinished(object sender, AnimationStatusEventArgs e){ AnimatedPropertySetting setting = sender as AnimatedPropertySetting; if (setting != null) { radPanorama1.PanoramaElement.ScrollView((int)((SizeF)setting.EndValue).Width); }}private LayoutPanel GetCurrentLayout(){ if (radPanorama1.PanoramaElement.ShowGroups) { return radPanorama1.PanoramaElement.GroupLayout; } return radPanorama1.PanoramaElement.TileLayout;}I hope that you find this information useful. Should you have any other questions, do not hesitate to contact us.
Regards,
Stefan
Telerik
Check out Telerik Analytics, the service which allows developers to discover app usage patterns, analyze user data, log exceptions, solve problems and profile application performance at run time. Watch the videos and start improving your app based on facts, not hunches.
0
Ralf
Top achievements
Rank 2
Iron
answered on 27 Aug 2014, 08:20 PM
Hi Stefan,
thank you for your quick and detailed answer. How can i translate the Linie
to vb.net?
thank you for your quick and detailed answer. How can i translate the Linie
offsetSetting.AnimationFinished += New AnimationFinishedEventHandler(AddressOf zoomInOffset_AnimationFinished)to vb.net?
0
Hi Ralf,
Please refer to the following MSDN article, which explains how to subscribe to events in VB.NET: http://msdn.microsoft.com/en-us/library/7taxzxka.aspx.
In addition you can use our free online converter for conversion between C# and VB.NET.
Regards,
Stefan
Telerik
Please refer to the following MSDN article, which explains how to subscribe to events in VB.NET: http://msdn.microsoft.com/en-us/library/7taxzxka.aspx.
In addition you can use our free online converter for conversion between C# and VB.NET.
Regards,
Stefan
Telerik
Check out Telerik Analytics, the service which allows developers to discover app usage patterns, analyze user data, log exceptions, solve problems and profile application performance at run time. Watch the videos and start improving your app based on facts, not hunches.
