IContainerControl Schnittstelle
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt Funktionen bereit, durch die ein Steuerelement als übergeordnetes Element für andere Steuerelemente agieren kann.
public interface class IContainerControl
public interface IContainerControl
type IContainerControl = interface
Public Interface IContainerControl
- Abgeleitet
Beispiele
Das folgende Beispiel erbt von der ScrollableControl Klasse und implementiert die IContainerControl Schnittstelle. Die Implementierung wird der ActiveControl Eigenschaft und der ActivateControl Methode hinzugefügt.
using namespace System;
using namespace System::Windows::Forms;
using namespace System::Drawing;
public ref class MyContainer: public ScrollableControl, public IContainerControl
{
private:
Control^ activeControl;
public:
MyContainer()
{
// Make the container control Blue so it can be distinguished on the form.
this->BackColor = Color::Blue;
// Make the container scrollable.
this->AutoScroll = true;
}
property Control^ ActiveControl
{
// Add implementation to the IContainerControl.ActiveControl property.
virtual Control^ get()
{
return activeControl;
}
virtual void set( Control^ value )
{
// Make sure the control is a member of the ControlCollection.
if ( this->Controls->Contains( value ) )
{
activeControl = value;
}
}
}
// Add implementations to the IContainerControl.ActivateControl(Control) method.
virtual bool ActivateControl( Control^ active )
{
if ( this->Controls->Contains( active ) )
{
// Select the control and scroll the control into view if needed.
active->Select( );
this->ScrollControlIntoView( active );
this->activeControl = active;
return true;
}
return false;
}
};
using System;
using System.Windows.Forms;
using System.Drawing;
public class MyContainer : ScrollableControl, IContainerControl
{
private Control activeControl;
public MyContainer()
{
// Make the container control Blue so it can be distinguished on the form.
this.BackColor = Color.Blue;
// Make the container scrollable.
this.AutoScroll = true;
}
// Add implementation to the IContainerControl.ActiveControl property.
public Control ActiveControl
{
get
{
return activeControl;
}
set
{
// Make sure the control is a member of the ControlCollection.
if(this.Controls.Contains(value))
{
activeControl = value;
}
}
}
// Add implementations to the IContainerControl.ActivateControl(Control) method.
public bool ActivateControl(Control active)
{
if(this.Controls.Contains(active))
{
// Select the control and scroll the control into view if needed.
active.Select();
this.ScrollControlIntoView(active);
this.activeControl = active;
return true;
}
return false;
}
}
Imports System.Windows.Forms
Imports System.Drawing
Public Class MyContainerControl
Inherits ScrollableControl
Implements IContainerControl
Private myActiveControl As Control
Public Sub New()
' Make the container control Blue so it can be distinguished on the form.
Me.BackColor = Color.Blue
' Make the container scrollable.
Me.AutoScroll = True
End Sub
' Add implementation to the IContainerControl.ActiveControl property.
Public Property ActiveControl() As Control Implements IContainerControl.ActiveControl
Get
Return Me.myActiveControl
End Get
Set
' Make sure the control is a member of the ControlCollection.
If Me.Controls.Contains(value) Then
Me.myActiveControl = value
End If
End Set
End Property
' Add implementation to the IContainerControl.ActivateControl(Control) method.
public Function ActivateControl(active As Control) As Boolean Implements IContainerControl.ActivateControl
If Me.Controls.Contains(active) Then
' Select the control and scroll the control into view if needed.
active.Select()
Me.ScrollControlIntoView(active)
Me.myActiveControl = active
Return True
End If
Return False
End Function
End Class
Hinweise für Ausführende
Implementieren Sie diese Schnittstelle in Klassen, die Sie einer Auflistung von Steuerelementen geordnet werden möchten. Mit den Membern dieser Schnittstelle können Sie ein untergeordnetes Steuerelement aktivieren oder bestimmen, welches Steuerelement derzeit aktiv ist. Wenn sie in einer Klasse implementiert werden, ActivateControl(Control) wird ein Control Parameter verwendet und das angegebene Steuerelement aktiviert. Die ActiveControl Eigenschaft aktiviert oder ruft das steuerelement ab, das aktiv ist.
In den meisten gängigen Szenarien müssen Sie diese Schnittstelle nicht direkt implementieren. Wenn Sie beispielsweise ein Windows Steuerelementbibliotheksprojekt erstellen, generiert Visual Studio eine erste Klasse für Sie. Diese Klasse erbt von der UserControl Klasse und UserControl implementiert sie IContainerControl für Sie.
Eigenschaften
ActiveControl |
Ruft das aktive Steuerelement im Containersteuerelements ab oder legt dieses fest. |
Methoden
ActivateControl(Control) |
Aktiviert ein angegebenes Steuerelement. |