Autor Beitrag
Seeker63
Hält's aus hier
Beiträge: 9


C# (VS 2015)
BeitragVerfasst: Do 30.06.16 11:56 
Hallo,
ich habe das Internet nun schon ein paar Tage durchsucht und auch einige Beiträge gefunden wie man ein TabControl dynamisch aufbaut. Allerdings möchte ich in den einzelnen Tabs auch verschiedene UserControls anzeigen. Ist das überhaupt möglich oder sollte ich mir dafür eine andere Möglichkeit überlegen?

Vielen Dank für eure Antworten.
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Do 30.06.16 11:59 
Hallo,

ein UserControl solltest Du genauso wie jedes andere Control ebenfalls dynamisch erzeugen können. Eventuell kannst Du Deine Frage etwas spezifischer stellen? Dann kann man sicherlich auch besser helfen :)

Grüße
Christian

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
erfahrener Neuling
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 233
Erhaltene Danke: 19

Win 7, Win 10
C#, ASP-MVC (VS 2017 Community), MS SQL, Firebird SQL
BeitragVerfasst: Do 30.06.16 12:36 
Hi,

was spricht gegen
ausblenden C#-Quelltext
1:
tabpageXY.Controls.Add(...);					
?


Gruß Julian

EDIT: Ooops gar nicht gesehen, dass es für WPF ist :mrgreen:


Zuletzt bearbeitet von erfahrener Neuling am Do 30.06.16 14:23, insgesamt 1-mal bearbeitet
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4700
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Do 30.06.16 12:49 
z.B. das es in WPF anders funktioniert als in Winforms.
Seeker63 Threadstarter
Hält's aus hier
Beiträge: 9


C# (VS 2015)
BeitragVerfasst: Do 30.06.16 15:23 
Hallo,
ich meine damit das ich auf Tab1 UserControlA, auf Tab2 UserControlY usw... anzeige. In den ganzen Beispielen die ich im Internet fand wird auf jedem Tab dasselbe UserControl verwendet mit unterschiedlichem ViewModel. Ich möchte aber wirklich unterschiedliche Views anzeigen. Falls dies mit einem TabControl nicht funktioniert was könnte ich dann statt des TabControls verwenden?
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Do 30.06.16 15:28 
Hallo,

klar geht das (auch in WPF). Jedes TabItem hat seinen eigenen Content, s. z.B. Tab Control in WPF ("Window1.xaml").
Seeker63 Threadstarter
Hält's aus hier
Beiträge: 9


C# (VS 2015)
BeitragVerfasst: Sa 02.07.16 16:36 
Hallo,

danke für das Beispiel. Doch leider werden in diesem Beispiel die Tabs nicht dynamisch erzeugt sondern in der MainWindow.xaml fest programmiert. Ich weiß das jedes Tab jede Art von Content anzeigen kann. Aber wie mache ich das wenn ich nicht weiß wieviele Tabs ich überhaupt anzeigen will?

Danke
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Sa 02.07.16 17:02 
Hallo,

also im Code lässt ich ein Tab (TabItem) so erzeugen:
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
var ti = new TabItem();

ti.Header = "foobar";
ti.Content = new Button();

tabControl.Items.Add(ti);


Dann hast Du ein TabItem mit dem Titel "foobar" in dem genau ein Button ist, der deshalb das gesamte TabItem ausfüllt. Was Du als Content setzt, ist natürlich Dir überlassen.


Dinge der UI im Code zu erzeugen, ist aber nicht so wirklich die Art, wie es in WPF gemacht wird. Schönes ist es mit DataBinding. Dazu müsste man aber mehr dazu wissen, wo die Information liegt, welche TabItems Du erstellen willst und was diese enthalten sollen.

Grüße
Christian

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".