(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

DrawToolTipEventArgs.AssociatedControl-Eigenschaft

Ruft das Steuerelement ab, für das der ToolTip gezeichnet wird.

Namespace:  System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

public Control AssociatedControl { get; }

Eigenschaftswert

Typ: System.Windows.Forms.Control
Das Control, das dem ToolTip zugeordnet wird, wenn das Draw-Ereignis auftritt. Der Rückgabewert ist null, wenn die QuickInfo keinem Steuerelement zugeordnet ist.

Da der ToolTip mithilfe der ToolTip.SetToolTip-Methode mehreren Steuerelementen zugeordnet werden kann, kann mithilfe der AssociatedControl-Eigenschaft bestimmt werden, welchem Steuerelement das Draw-Ereignis zugeordnet ist. Dies ist hilfreich, wenn auf der Grundlage des zugeordneten Steuerelements verschiedene QuickInfo-Anpassungen ausgeführt werden sollen.

Im folgenden Codebeispiel wird veranschaulicht, wie die ToolTip benutzerdefiniert gezeichnet wird. Im Beispiel wird ein ToolTip erstellt und den drei Button-Steuerelementen zugeordnet, die sich auf dem Form befinden. Im Beispiel wird die OwnerDraw-Eigenschaft auf true festgelegt, und das Draw-Ereignis wird behandelt. Im Draw-Ereignishandler wird der ToolTip benutzerdefiniert gezeichnet, je nachdem, für welche Schaltfläche der ToolTip wie durch die DrawToolTipEventArgs.AssociatedControl-Eigenschaft angegeben angezeigt wird.

Im folgenden Codebeispielauszug wird die Verwendung der AssociatedControl-Eigenschaft veranschaulicht. Das vollständige Codebeispiel finden Sie in der Übersicht zur DrawToolTipEventArgs-Klasse.


// Handles drawing the ToolTip.
private void toolTip1_Draw(System.Object sender, 
    System.Windows.Forms.DrawToolTipEventArgs e)
{
    // Draw the ToolTip differently depending on which 
    // control this ToolTip is for.
    // Draw a custom 3D border if the ToolTip is for button1.
    if (e.AssociatedControl == button1)
    {
        // Draw the standard background.
        e.DrawBackground();

        // Draw the custom border to appear 3-dimensional.
        e.Graphics.DrawLines(SystemPens.ControlLightLight, new Point[] {
            new Point (0, e.Bounds.Height - 1), 
            new Point (0, 0), 
            new Point (e.Bounds.Width - 1, 0)
        });
        e.Graphics.DrawLines(SystemPens.ControlDarkDark, new Point[] {
            new Point (0, e.Bounds.Height - 1), 
            new Point (e.Bounds.Width - 1, e.Bounds.Height - 1), 
            new Point (e.Bounds.Width - 1, 0)
        });

        // Specify custom text formatting flags.
        TextFormatFlags sf = TextFormatFlags.VerticalCenter |
                             TextFormatFlags.HorizontalCenter |
                             TextFormatFlags.NoFullWidthCharacterBreak;

        // Draw the standard text with customized formatting options.
        e.DrawText(sf);
    }
    // Draw a custom background and text if the ToolTip is for button2.
    else if (e.AssociatedControl == button2)
    {
        // Draw the custom background.
        e.Graphics.FillRectangle(SystemBrushes.ActiveCaption, e.Bounds);

        // Draw the standard border.
        e.DrawBorder();

        // Draw the custom text.
        // The using block will dispose the StringFormat automatically.
        using (StringFormat sf = new StringFormat())
        {
            sf.Alignment = StringAlignment.Center;
            sf.LineAlignment = StringAlignment.Center;
            sf.HotkeyPrefix = System.Drawing.Text.HotkeyPrefix.None;
            sf.FormatFlags = StringFormatFlags.NoWrap;
            using (Font f = new Font("Tahoma", 9))
            {
                e.Graphics.DrawString(e.ToolTipText, f, 
                    SystemBrushes.ActiveCaptionText, e.Bounds, sf);
            }
        }
    }
    // Draw the ToolTip using default values if the ToolTip is for button3.
    else if (e.AssociatedControl == button3)
    {
        e.DrawBackground();
        e.DrawBorder();
        e.DrawText();
    }
}


.NET Framework

Unterstützt in: 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

Es werden nicht alle Versionen sämtlicher Plattformen von .NET Framework unterstützt.. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft