Festlegen die BorderStyle-Eigenschaft für Benutzersteuerelemente in Visual c#

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 316574 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Auf dieser Seite

Zusammenfassung

Dieser schrittweise aufgebaute Artikel beschreibt einen benutzerdefinierten Rahmenstil für ein UserControl -Objekt fest. Standardmäßig verfügen die UserControl -Objekte keine BorderStyle -Eigenschaft festgelegt. Die BorderStyle -Eigenschaft gibt die Rahmenart für Steuerelemente, die einen änderbaren Rahmen haben.

Erstellen einer Windows Forms-Anwendung

  1. Öffnen Sie Microsoft Visual Studio .NET oder Microsoft Visual Studio 2005.
  2. Zeigen im Menü Datei auf neu , und klicken Sie dann auf Projekt .
  3. Klicken Sie im Dialogfeld Neues Projekt klicken Sie unter Projekttypen auf Visual C#-Projekte , und klicken Sie dann unter Vorlagen auf Windows-Steuerelementbibliothek . Geben Sie im Textfeld Name BorderedUserControlSample ein.

    Hinweis: Klicken Sie in Visual Studio 2005 auf Visual c# unter Projekttypen .

Anpassen des Formulars und der Steuerelementeigenschaften

  1. Kopieren und fügen Sie den folgenden Code vor der Klassendeklaration UserControl1 :
    class NativeMethods {
         public const int WS_EX_CLIENTEDGE = unchecked((int)0x00000200);
         public const int WS_BORDER = unchecked((int)0x00800000);
    }
    					
  2. Kopieren und einfügen die folgenden Member-Declarations in die Klasse UserControl1 :
    private BorderStyle borderStyle;
    private System.Windows.Forms.TextBox textName;
    private System.Windows.Forms.TextBox textAddress;
    					
  3. Kopieren und fügen Sie den folgenden Code in der InitializeComponent -Methode:
    textName = new System.Windows.Forms.TextBox();
    textAddress = new System.Windows.Forms.TextBox();
    textName.Location = new System.Drawing.Point(50, 8);
    textName.Size = new System.Drawing.Size(100, 20);
    textName.TabIndex = 0;
    textAddress.Location = new System.Drawing.Point(50, 32);
    textAddress.Size = new System.Drawing.Size(100, 20);
    textAddress.TabIndex = 1;
    Controls.AddRange(new System.Windows.Forms.Control[] 
    {
         textName,
         textAddress,
    });  
                           // Size the user control.
    Size = new System.Drawing.Size(200, 100);
    					
  4. Kopieren und fügen Sie den folgenden Code in Klasse UserControl1 nach UserControl1_Load -Methode:
    protected override CreateParams CreateParams 
    {
         get {
                  CreateParams cp = base.CreateParams;
                  cp.ExStyle &= (~NativeMethods.WS_EX_CLIENTEDGE);
                  cp.Style &= (~NativeMethods.WS_BORDER);
    
                  switch (borderStyle) {
                      case BorderStyle.Fixed3D:
                          cp.ExStyle |= NativeMethods.WS_EX_CLIENTEDGE;
                          break;
                      case BorderStyle.FixedSingle:
                          cp.Style |= NativeMethods.WS_BORDER;
                          break;
                  }
                  return cp;
             }
    }
    
    public BorderStyle BorderStyle {
          get {
                 return borderStyle;
              }
    
          set {
                    if (borderStyle != value) {
                        if (!Enum.IsDefined(typeof(BorderStyle), value)) {
                            throw new InvalidEnumArgumentException("value", (int)value, typeof(BorderStyle));
                        }
    
                        borderStyle = value;
                        UpdateStyles();
                    }
                }
            }
    					

Kompilieren Sie das Projekt

Kompilieren Sie das Projekt. Klicken Sie dazu im Menü Erstellen auf Projektmappe erstellen . Dies generiert eine Datei dynamic-link Bibliothek (.dll).

Hinzufügen eines Verweises auf das Benutzersteuerelement

Um einen Verweis auf das Benutzersteuerelement hinzuzufügen, die Sie zuvor erstellt haben, gehen Sie folgendermaßen vor:
  1. Fügen Sie eine neue Visual C#-Windows-Anwendung zur Lösung.

    Um eine neue Anwendung im Menü Datei hinzuzufügen, klicken Sie auf Projekt hinzufügen , klicken Sie auf Neues Projekt und klicken Sie auf Windows-Anwendung .
  2. Klicken Sie mit der rechten Maustaste auf in der Projektmappe das Windows-Anwendung-Projekt-Explorer, und klicken Sie dann auf Verweis hinzufügen .
  3. Klicken Sie auf die Registerkarte Projekte , und klicken Sie dann auf UserControl .
  4. Fügen Sie folgenden Code am Ende alle USING -Anweisungen:
    using BorderedUserControlSample;
    					
  5. Kopieren und einfügen die Element-Deklaration in der Klasse Form1 :
    private BorderedUserControlSample.UserControl1 myUserControl;
    					
  6. Kopieren Sie und fügen Sie den folgenden Code in die InitializeComponent -Methode:
myUserControl = new BorderedUserControlSample.UserControl1();
myUserControl.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
this.Controls.Add(myUserControl);
					

Beim Ausführen von Windows-Anwendungsprojekts werden zwei Textfelder innerhalb eines Randbereichs Fixed3D angezeigt.

Informationsquellen

Weitere Informationen finden Sie auf folgenden MSDN-Websites:
Systems.Windows.Forms.UserControl-Klasse
http://msdn2.microsoft.com/en-us/library/system.windows.forms.usercontrol(vs.71).aspx

Rahmenart
http://msdn2.microsoft.com/en-us/library/system.windows.forms.borderstyle(vs.71).aspx

Eigenschaften

Artikel-ID: 316574 - Geändert am: Mittwoch, 16. Mai 2007 - Version: 4.5
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft .NET Framework Software Development Kit 1.0 Service Pack 2
  • Microsoft Visual C# .NET 2002 Standard Edition
  • Microsoft Visual C# 2005 Express Edition
Keywords: 
kbmt kbctrl kbhowtomaster KB316574 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 316574
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com