# C1.Win.TouchToolKit.ControlBar

## Content

<div class="doc-site-dotnet-api-container">



  <h1 id="C1_Win_TouchToolKit_ControlBar" data-uid="C1.Win.TouchToolKit.ControlBar" class="text-break">ControlBar Class
</h1>
  <div class="markdown level0 summary"><p>Represents a floating, translucent window for owner form. User can add any controls to the window.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
    <div class="level1"><span class="xref">ControlBar</span></div>
  </div>
  <div class="implements">
    <h5>Implements</h5>
    <div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.idisposable">IDisposable</a></div>
  </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.4.8.dll</h6>
  <h5 id="C1_Win_TouchToolKit_ControlBar_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class ControlBar : IDisposable</code></pre>
  </div>
  <div class="codewrapper">
    <pre><code class="lang-vbnet hljs">Public Class ControlBar
    Implements IDisposable</code></pre>
  </div>
  <h5 id="C1_Win_TouchToolKit_ControlBar_examples"><strong>Examples</strong></h5>
  <p>
  The following code example shows how to use the <a class="xref" href="C1.Win.TouchToolKit.ControlBar.html">ControlBar</a> class.
</p>
<pre><code class="lang-csharp">public class ControlBarDemo : Form
{
	private Button _controlBarButton;
	private MyUserControl _userControl = new MyUserControl();
	private GcZoom _gcZoom1 = new GcZoom();

	public ControlBarDemo()
	{
		InitializeComponent();

		_gcZoom1.Target = this;

		// Create ControlBar
		AddControlBar();
	}

	private void AddControlBar()
	{
		ControlBar controlBar = new ControlBar();

		// Content should is a Type of UserControl.
		controlBar.Content = _userControl.GetType();

		controlBar.PositionMode = PositionMode.Floating;

		// Only take effect when Position Mode is Dock.
		// controlBar.DockPosition = ContentAlignment.MiddleCenter;
		// controlBar.Margin = new System.Windows.Forms.Padding();

		// Only take effect when PositionMode is Fix or Flowing.
		controlBar.Position = new Point(20, 20);

		controlBar.Opacity = 1d;
		controlBar.TransparentBackground = true;

		_gcZoom1.ControlBars.Add(controlBar);
	}

	private void InitializeComponent()
	{
		_controlBarButton = new Button();
		_controlBarButton.Text = "This is a Button";
		_controlBarButton.Location = new Point(100, 100);
		_controlBarButton.Size = new Size(120, 30);
		this.Controls.Add(_controlBarButton);
	}
}

public class MyUserControl : UserControl
{
	private GcZoomCommandProvider commands = new GcZoomCommandProvider();
	private Button _zoomInButton;
	private Button _zoomOutButton;
	private Button _getButton;

	public MyUserControl()
	{
		InitializeComponent();

		commands.Target = this;
		commands.SetZoomCommands(_zoomInButton, ZoomCommands.ZoomIn);
		Console.WriteLine(commands.GetZoomCommands(_zoomInButton).ToString());

		commands.SetZoomCommands(_zoomOutButton, ZoomCommands.ZoomOut);
		Console.WriteLine(commands.GetZoomCommands(_zoomOutButton).ToString());

		_getButton.Click += _getButton_Click;
	}

	void _getButton_Click(object sender, EventArgs e)
	{
		Console.WriteLine(commands.OwnerForm.ToString());
		Console.WriteLine(commands.OwnerGcZoom.ToString());
	}

	private void InitializeComponent()
	{
		_zoomInButton = new Button();
		_zoomInButton.Text = "+";
		_zoomInButton.Size = new Size(40, 40);
		_zoomInButton.Location = new Point(10, 10);

		_zoomOutButton = new Button();
		_zoomOutButton.Text = "_";
		_zoomOutButton.Size = new Size(40, 40);
		_zoomOutButton.Location = new Point(60, 10);

		_getButton = new Button();
		_getButton.Text = "Get";
		_getButton.Size = new Size(40, 40);
		_getButton.Location = new Point(110, 10);

		this.Size = new Size(160, 60);
		this.Controls.Add(_zoomInButton);
		this.Controls.Add(_zoomOutButton);
		this.Controls.Add(_getButton);
	}
}</code></pre>
<pre><code class="lang-csharp">Public Class ControlBarDemo
	Inherits Form
	Private _controlBarButton As Button
	Private _userControl As New MyUserControl()
	Private _gcZoom1 As New GcZoom()

	Public Sub New()
		InitializeComponent()

		_gcZoom1.Target = Me

		' Create ControlBar
		AddControlBar()
	End Sub

	Private Sub AddControlBar()
		Dim controlBar As New ControlBar()

		' Content should is a Type of UserControl.
		controlBar.Content = _userControl.[GetType]()
		controlBar.PositionMode = PositionMode.Floating

		' Only take effect when Position Mode is Dock.
		' controlBar.DockPosition = ContentAlignment.MiddleCenter;
		' controlBar.Margin = new System.Windows.Forms.Padding();

		' Only take effect when PositionMode is Fix or Flowing.
		controlBar.Position = New Point(20, 20)

		controlBar.Opacity = 1.0
		controlBar.TransparentBackground = True

		_gcZoom1.ControlBars.Add(controlBar)
	End Sub

	Private Sub InitializeComponent()
		_controlBarButton = New Button()
		_controlBarButton.Text = "This is a Button"
		_controlBarButton.Location = New Point(100, 100)
		_controlBarButton.Size = New Size(120, 30)
		Me.Controls.Add(_controlBarButton)
	End Sub
End Class

Public Class MyUserControl
	Inherits UserControl
	Private commands As New GcZoomCommandProvider()
	Private _zoomInButton As Button
	Private _zoomOutButton As Button
	Private _getButton As Button

	Public Sub New()
 		InitializeComponent()

		commands.Target = Me
		commands.SetZoomCommands(_zoomInButton, ZoomCommands.ZoomIn)
		Console.WriteLine(commands.GetZoomCommands(_zoomInButton).ToString())

		commands.SetZoomCommands(_zoomOutButton, ZoomCommands.ZoomOut)
		Console.WriteLine(commands.GetZoomCommands(_zoomOutButton).ToString())

		AddHandler _getButton.Click, AddressOf _getButton_Click
	End Sub

	Private Sub _getButton_Click(sender As Object, e As EventArgs)
		Console.WriteLine(commands.OwnerForm.ToString())
		Console.WriteLine(commands.OwnerGcZoom.ToString())
	End Sub

	Private Sub InitializeComponent()
 		_zoomInButton = New Button()
 		_zoomInButton.Text = "+"
 		_zoomInButton.Size = New Size(40, 40)
 		_zoomInButton.Location = New Point(10, 10)

 		_zoomOutButton = New Button()
 		_zoomOutButton.Text = "_"
 		_zoomOutButton.Size = New Size(40, 40)
 		_zoomOutButton.Location = New Point(60, 10)

 		_getButton = New Button()
 		_getButton.Text = "Get"
 		_getButton.Size = New Size(40, 40)
 		_getButton.Location = New Point(110, 10)

 		Me.Size = New Size(160, 60)
 		Me.Controls.Add(_zoomInButton)
 		Me.Controls.Add(_zoomOutButton)
 		Me.Controls.Add(_getButton)
	End Sub
End Class</code></pre>

  <h3 id="constructors">Constructors
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_Win_TouchToolKit_ControlBar__ctor" data-uid="C1.Win.TouchToolKit.ControlBar.#ctor">
          <a class="xref" href="C1.Win.TouchToolKit.ControlBar.-ctor.html#C1_Win_TouchToolKit_ControlBar__ctor">ControlBar()</a>
        </td>
        <td class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="C1.Win.TouchToolKit.ControlBar.html">ControlBar</a> class.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="properties">Properties
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_Win_TouchToolKit_ControlBar_Content" data-uid="C1.Win.TouchToolKit.ControlBar.Content">
          <a class="xref" href="C1.Win.TouchToolKit.ControlBar.Content.html#C1_Win_TouchToolKit_ControlBar_Content">Content</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets a value indicating the <span class="xref">C1.Win.TouchToolKit.ControlBar.UserControl</span> type object for the <a class="xref" href="C1.Win.TouchToolKit.ControlBar.html">ControlBar</a> window.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Win_TouchToolKit_ControlBar_DockPosition" data-uid="C1.Win.TouchToolKit.ControlBar.DockPosition">
          <a class="xref" href="C1.Win.TouchToolKit.ControlBar.DockPosition.html#C1_Win_TouchToolKit_ControlBar_DockPosition">DockPosition</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets a value indicating the alignment of the <a class="xref" href="C1.Win.TouchToolKit.ControlBar.html">ControlBar</a> window.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Win_TouchToolKit_ControlBar_Margin" data-uid="C1.Win.TouchToolKit.ControlBar.Margin">
          <a class="xref" href="C1.Win.TouchToolKit.ControlBar.Margin.html#C1_Win_TouchToolKit_ControlBar_Margin">Margin</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets a value indicating the outer margin of a <a class="xref" href="C1.Win.TouchToolKit.ControlBar.html">ControlBar</a> window relative the
owner form client coordinates.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Win_TouchToolKit_ControlBar_Opacity" data-uid="C1.Win.TouchToolKit.ControlBar.Opacity">
          <a class="xref" href="C1.Win.TouchToolKit.ControlBar.Opacity.html#C1_Win_TouchToolKit_ControlBar_Opacity">Opacity</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the opacity level of the <a class="xref" href="C1.Win.TouchToolKit.ControlBar.html">ControlBar</a> window.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Win_TouchToolKit_ControlBar_Position" data-uid="C1.Win.TouchToolKit.ControlBar.Position">
          <a class="xref" href="C1.Win.TouchToolKit.ControlBar.Position.html#C1_Win_TouchToolKit_ControlBar_Position">Position</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets a value that represents the upper-left corner of the owner form client coordinates.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Win_TouchToolKit_ControlBar_PositionMode" data-uid="C1.Win.TouchToolKit.ControlBar.PositionMode">
          <a class="xref" href="C1.Win.TouchToolKit.ControlBar.PositionMode.html#C1_Win_TouchToolKit_ControlBar_PositionMode">PositionMode</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the <a class="xref" href="C1.Win.TouchToolKit.ControlBar.html">ControlBar</a> window position mode.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Win_TouchToolKit_ControlBar_TransparencyKey" data-uid="C1.Win.TouchToolKit.ControlBar.TransparencyKey">
          <a class="xref" href="C1.Win.TouchToolKit.ControlBar.TransparencyKey.html#C1_Win_TouchToolKit_ControlBar_TransparencyKey">TransparencyKey</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the color that will represent transparent the <a class="xref" href="C1.Win.TouchToolKit.ControlBar.html">ControlBar</a> window.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Win_TouchToolKit_ControlBar_TransparentBackground" data-uid="C1.Win.TouchToolKit.ControlBar.TransparentBackground">
          <a class="xref" href="C1.Win.TouchToolKit.ControlBar.TransparentBackground.html#C1_Win_TouchToolKit_ControlBar_TransparentBackground">TransparentBackground</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets a value indicating whether the <a class="xref" href="C1.Win.TouchToolKit.ControlBar.html">ControlBar</a> window is transparent.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="methods">Methods
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_Win_TouchToolKit_ControlBar_Dispose" data-uid="C1.Win.TouchToolKit.ControlBar.Dispose">
          <a class="xref" href="C1.Win.TouchToolKit.ControlBar.Dispose.html#C1_Win_TouchToolKit_ControlBar_Dispose">Dispose()</a>
        </td>
        <td class="markdown level1 summary"><p>Releases the unmanaged resources.</p>
</td>
      </tr>
    </tbody>
  </table>

</div>
