2013-03-23 10 views
5

Ich habe dieses Haupt wpf Fenster Main WPF windowWie fügt man WPF-Seite zu Tabcontrol hinzu?

und diese WPF Seite

WPF page

Ich brauche diese Seite hinzufügen in Hauptfenster

Das ist meine OnRender Methode

tabcontrol
protected override void OnRender(DrawingContext drawingContext) 
    { 
     if (ISFirstRender) 
     { 
      TabItem tabitem = new TabItem(); 
      tabitem.Header = "Tab 3"; 
      pan1.Items.Add(tabitem); 
      Page1 page1 = new Page1(); 
      tabitem.Content = new Page1(); 

      ISFirstRender = false; 
     } 

     base.OnRender(drawingContext); 
    } 

nach der Anwendung läuft I f diese Ausnahme aced während der neuen Auswahl der Registerkarte Main WPf window after add tab3

Error after select tab 3

ich wissen müssen, wie wpf Seite vorhandenen tabcontroll

Antwort

8

Wenn Sie einen neuen Page hinzufügen möchten, wie zu einem UserControl Gegensatz, können Sie ein neues Frame-Objekt erstellen und legen Sie die Seite dort.

if (ISFirstRender) 
    { 
     TabItem tabitem = new TabItem(); 
     tabitem.Header = "Tab 3"; 
     Frame tabFrame = new Frame(); 
     Page1 page1 = new Page1(); 
     tabFrame.Content = page1; 
     tabitem.Content = tabFrame; 
     pan1.Items.Add(tabitem); 

     ISFirstRender = false; 
    } 
3

Sie können hinzufügen Benutzersteuerungen zum TabControl hinzufügen. Gehen Sie also zum Hinzufügen neuer Elemente und wählen Sie das Benutzersteuerelement und machen Sie, was Sie wollen (wie Sie auf der Seite haben). Fügen Sie dann eine Instanz dieses Benutzersteuerelements zur TabControl hinzu.

protected override void OnRender(DrawingContext drawingContext) 
{ 
    if (ISFirstRender) 
    { 
     TabItem tabitem = new TabItem(); 
     tabitem.Header = "Tab 3"; 
     pan1.Items.Add(tabitem); 

     MyUserControl userControl = new MyUserControl(); 
     tabitem.Content = userControl; 

     ISFirstRender = false; 
    } 

    base.OnRender(drawingContext); 
} 
Verwandte Themen