[]
        
(Showing Draft Content)

C1.Win.TouchToolKit.C1ZoomPanel.ControlBoundsZooming

ControlBoundsZooming Event

Occurs before C1ZoomPanel start zoom the target control's bounds.

Namespace: C1.Win.TouchToolKit
Assembly: C1.Win.TouchToolKit.8.dll
Syntax
public event EventHandler<ControlBoundsZoomingEventArgs> ControlBoundsZooming
Returns
Type Description
EventHandler<ControlBoundsZoomingEventArgs> Occurs before start zoom the target control's bounds.
Remarks

You can set Handled to avoid default logic of C1ZoomPanel for current control.

You can set ChildrenHandled to avoid default logic of C1ZoomPanel for current control's child control.

Examples

The following code example shows how to use this event.

This code example is part of a larger example provided for the ZoomFactorChanged event.

public class GcZoomEventDemo : Form
{
	private GcZoom _gcZoom1 = new GcZoom();

	public GcZoomEventDemo()
	{
		_gcZoom1.Target = this;
		_gcZoom1.AutoShowControl = true;
		_gcZoom1.ControlBoundsZooming += _gcZoom1_ControlBoundsZooming;
	}

	void _gcZoom1_ControlBoundsZooming(object sender, ControlBoundsZoomingEventArgs e)
	{
		ZoomBoundsInfo info = e.ZoomBoundsInfo;

		Console.WriteLine(e.TargetControl.ToString());
		Console.WriteLine(info.CurrentFactor.ToString());
		Console.WriteLine(info.TargetFactor.ToString());

		// For complex control, user may want to change the control's inner element's size.
		// User can use ControlBoundsZooming to support complex control.
		if (e.TargetControl is TextBox)
		{
			// If set to true, default zoom logic for this control will be canceled.
			e.Handled = true;
		}

		// If target control has children controls and wan't to use default zoom logic for children 
		// controls, set e.ChildrenHandled property to true.
		// e.ChildrenHandled = true; 
	}
}
Public Class GcZoomEventDemo
	Inherits Form
	Private _gcZoom1 As New GcZoom()

	Public Sub New()
		_gcZoom1.Target = Me
		_gcZoom1.AutoShowControl = True
		AddHandler _gcZoom1.ControlBoundsZooming, AddressOf _gcZoom1_ControlBoundsZooming
	End Sub

	Private Sub _gcZoom1_ControlBoundsZooming(sender As Object, e As ControlBoundsZoomingEventArgs)
		Dim info As ZoomBoundsInfo = e.ZoomBoundsInfo

		Console.WriteLine(e.TargetControl.ToString())
		Console.WriteLine(info.CurrentFactor.ToString())
		Console.WriteLine(info.TargetFactor.ToString())

		' For complex control, user may want to change the control's inner element's size.
		' User can use ControlBoundsZooming to support complex control.
		If TypeOf e.TargetControl Is TextBox Then
			' If set to true, default zoom logic for this control will be canceled.
			e.Handled = True
		End If

		' If target control has children controls and wan't to use default zoom logic for children 
		' controls, set e.ChildrenHandled property to true.
		' e.ChildrenHandled = true; 
	End Sub
End Class