Copytrading-UI: ein Fenster mit TabControl statt drei Launcher-Buttons

Statt je Ansicht ein eigenes Fenster (3 Launcher-Buttons) gibt es jetzt EIN
Modul-Fenster mit Tabs – wie im alten PolyTrader. Skaliert sauber, wenn weitere
Module dazukommen (ein Button je Modul).

- MasterTradersView/ClosedTradesView/AccountSettingsView: von Form -> UserControl
  (Tab-Inhalte); Designer-Root auf Size statt ClientSize/Text/MinimumSize.
- Neu: CopyTradingMainForm (Designer) mit TabControl + 3 TabPages, hostet die
  drei UserControls; Initialize(IServiceProvider) versorgt jeden Tab per DI.
- CopyTradingModule.RegisterUi registriert nur noch EINE View "Copytrading".

Verifiziert: Build grün, --smoke-ui grün (eine View copytrading.main +
Launcher konstruieren fehlerfrei, 3 Accounts / 32 Trader hydriert).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Richard
2026-07-06 10:26:40 +02:00
co-authored by Claude Opus 4.8
parent 76007db93f
commit c3d7e41e62
11 changed files with 422 additions and 166 deletions
@@ -203,12 +203,10 @@ namespace PolyTrader.Modules.CopyTrading.Ui
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(1100, 600);
this.Controls.Add(this.dgvTrades);
this.Controls.Add(this.pnlTop);
this.MinimumSize = new System.Drawing.Size(700, 400);
this.Name = "ClosedTradesView";
this.Text = "Geschlossene Copytrades";
this.Size = new System.Drawing.Size(1100, 600);
this.pnlTop.ResumeLayout(false);
this.pnlTop.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.dgvTrades)).EndInit();