# C1.Win.TouchToolKit.C1ApplicationZoom.C1ZoomDetached

## Content

<div class="doc-site-dotnet-api-container">




<h1 id="C1_Win_TouchToolKit_C1ApplicationZoom_C1ZoomDetached" data-uid="C1.Win.TouchToolKit.C1ApplicationZoom.C1ZoomDetached" class="text-break">C1ZoomDetached Event
</h1>
<div class="markdown level0 summary"><p>Occurs when the <a class="xref" href="C1.Win.TouchToolKit.C1Zoom.html">C1Zoom</a> component has detached from a <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.windows.forms.form">Form</a>.</p>
</div>
<div class="markdown level0 conceptual"></div>
<h6><strong>Namespace</strong>: <a class="xref" href="C1.Win.TouchToolKit.html">C1.Win.TouchToolKit</a></h6>
<h6><strong>Assembly</strong>: C1.Win.TouchToolKit.10.dll</h6>
<h5 id="C1_Win_TouchToolKit_C1ApplicationZoom_C1ZoomDetached_syntax">Syntax</h5>
<div class="codewrapper">
  <pre><code class="lang-csharp hljs">public event EventHandler&lt;C1ZoomDetachedEventArgs&gt; C1ZoomDetached</code></pre>
</div>
<div class="codewrapper">
  <pre><code class="lang-vbnet hljs">Public Event C1ZoomDetached As EventHandler(Of C1ZoomDetachedEventArgs)</code></pre>
</div>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Type</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.eventhandler-1">EventHandler</a>&lt;<a class="xref" href="C1.Win.TouchToolKit.C1ZoomDetachedEventArgs.html">C1ZoomDetachedEventArgs</a>&gt;</td>
      <td>Occurs when the  component has detached from a .</td>
    </tr>
  </tbody>
</table>
<h5 id="C1_Win_TouchToolKit_C1ApplicationZoom_C1ZoomDetached_examples"><strong>Examples</strong></h5>
<p>
  The following code example shows how to use this event.
</p>
<p>
  This code example is part of a larger example provided for the <a class="xref" href="C1.Win.TouchToolKit.C1ApplicationZoom.html">C1ApplicationZoom</a> class.
</p>
<pre><code class="lang-csharp">public class GcApplicationZoomDemo : Form
{
	private Button _showFormButton;
	private GcApplicationZoom _gcApplicationZoom;

	public GcApplicationZoomDemo()
	{
		InitializeComponent();

		_showFormButton.Click += _showFormButton_Click;
		_gcApplicationZoom.GcZoomDetached += _gcApplicationZoom_GcZoomDetached;
	}

	void _gcApplicationZoom_GcZoomDetached(object sender, GcZoomDetachedEventArgs e)
	{
		if (e.Form is ZoomForm)
		{
			e.GcZoom.ZoomFactorChanged -= (e.Form as ZoomForm).ZoomFactorChangeProc;
		}
	}

	void _showFormButton_Click(object sender, EventArgs e)
	{
		Form form = new ZoomForm();
		form.Show();
	}

	private void InitializeComponent()
	{
		_gcApplicationZoom = new GcApplicationZoom();
		_showFormButton = new Button();
		_showFormButton.Text = "Click to open ZoomForm";
		_showFormButton.Location = new Point(20, 20);
		_showFormButton.Size = new Size(200, 40);
		this.Controls.Add(_showFormButton);
	}
}

internal class ZoomForm : Form
{
	private Button _showFormButton;

	public ZoomForm()
	{
		InitializeComponent();

		_showFormButton.Click += _showFormButton_Click;
	}

	public void ZoomFactorChangeProc(object sender, EventArgs e)
	{
		Console.WriteLine(GcApplicationZoom.GetGcZoom(this).ZoomFactor.ToString());
	}

	private void _showFormButton_Click(object sender, EventArgs e)
	{
		Form form = new ZoomForm();
		form.Show();
	}

	private void InitializeComponent()
	{
		_showFormButton = new Button();
		_showFormButton.Text = "Click to open a new form";
		_showFormButton.Location = new Point(20, 20);
		_showFormButton.Size = new Size(200, 40);
		this.Controls.Add(_showFormButton);
		this.Text = "ZoomForm";
	}
}</code></pre>
<pre><code class="lang-csharp">Public Class GcApplicationZoomDemo
	Inherits Form
	Private _showFormButton As Button
	Private _gcApplicationZoom As GcApplicationZoom

	Public Sub New()
		InitializeComponent()

		AddHandler _showFormButton.Click, AddressOf _showFormButton_Click
		AddHandler _gcApplicationZoom.GcZoomDetached, AddressOf _gcApplicationZoom_GcZoomDetached
	End Sub

	Private Sub _gcApplicationZoom_GcZoomDetached(sender As Object, e As GcZoomDetachedEventArgs)
		If TypeOf e.Form Is ZoomForm Then
			RemoveHandler e.GcZoom.ZoomFactorChanged, AddressOf TryCast(e.Form, ZoomForm).ZoomFactorChangeProc
		End If
	End Sub

	Private Sub _showFormButton_Click(sender As Object, e As EventArgs)
		Dim form As Form = New ZoomForm()
		form.Show()
	End Sub

	Private Sub InitializeComponent()
		_gcApplicationZoom = New GcApplicationZoom()
		_showFormButton = New Button()
		_showFormButton.Text = "Click to open ZoomForm"
		_showFormButton.Location = New Point(20, 20)
		_showFormButton.Size = New Size(200, 40)
		Me.Controls.Add(_showFormButton)
	End Sub
End Class

Friend Class ZoomForm
	Inherits Form
	Private _showFormButton As Button

	Public Sub New()
		InitializeComponent()

		AddHandler _showFormButton.Click, AddressOf _showFormButton_Click
	End Sub

	Public Sub ZoomFactorChangeProc(sender As Object, e As EventArgs)
		Console.WriteLine(GcApplicationZoom.GetGcZoom(Me).ZoomFactor.ToString())
	End Sub

	Private Sub _showFormButton_Click(sender As Object, e As EventArgs)
		Dim form As Form = New ZoomForm()
		form.Show()
	End Sub

	Private Sub InitializeComponent()
		_showFormButton = New Button()
		_showFormButton.Text = "Click to open a new form"
		_showFormButton.Location = New Point(20, 20)
		_showFormButton.Size = New Size(200, 40)
		 Me.Controls.Add(_showFormButton)
	End Sub
End Class</code></pre>

</div>
