C# dynamiczne tworzenie Label i TextBox obok siebie

0

Witam,
Chciałbym tworzyć dynamicznie label następnie do niego w jednej lini dosunięty TextBox i do textbox'a przycisk. Mam kod jak poniżej:

                int label = 1;
                int text = 1;

                LabelControl lblPole1 = new LabelControl();                
                this.Controls.Add(lblPole1);
                lblPole1.Top = label * 50;
                lblPole1.Left = 30;
                
               
                lblPole1.Text = "Pole1";
                label = label + 1;

                TextEdit txtPole1 = new TextEdit();
                this.Controls.Add(txtPole1);
                txtPole1.Top = text * 50;
                txtPole1.Left = 30;               

                txtPole1.Text = "";
                text = text + 1;

kod działa tylko, że jak widać dla obu kontrolek Left = 30. Jak można to zrobić, aby nie przypisywać na stałe tej wartości tylko żeby każda kolejna kontrolka dopasowała swoje położenie na osi X względem końca poprzedniej kontrolki w lini ? Chodzi o to, że Label tworzony dynamicznie może mieć różne długości.

0

@pawelus222: Moze sprobuj opakowac to w dockpanel i skorzystaj z horizontal alignment?

0

Zainteresuj się tym https://docs.microsoft.com/pl-pl/dotnet/api/system.windows.controls.wrappanel?view=windowsdesktop-6.0
(Poziome rozmieszczenie elementów)

Zainteresuj się tym https://docs.microsoft.com/pl-pl/dotnet/api/system.windows.controls.itemscontrol?view=windowsdesktop-6.0
Tworzysz ObservableCollection<string> i wiążesz z ItemsSource. Potem to kwestia ustawień jak chcesz aby elementy były wyświetlane
(To rozwiązanie jest lepsze niż tworzenie kontrolek samemu i pozycjonowanie ich)

1 użytkowników online, w tym zalogowanych: 0, gości: 1