Макет Dynami c Stack при нажатии кнопки в xamarin.forms - PullRequest
0 голосов
/ 03 августа 2020

Я работаю над Xamarin Project. У меня есть stacklayout, и в нем есть метки, combox, автозаполнение. Я хочу создать новый стек, который будет содержать все поля при нажатии add_button и удалить его при щелчке delete_button. Вот код:

    StackLayout BackgroundColor="{DynamicResource Gray-100}" Spacing="0" Padding="16,24">
    
                           
              <Label
                            FontFamily="{StaticResource Montserrat-Medium}"
                            Margin="0,24,0,4"
                            HeightRequest="18"
                            FontSize="12"
                            Text="Entity *"
                            TextColor="{DynamicResource Gray-800}" />
    <Label
                            FontFamily="{StaticResource Montserrat-Medium}"
                            Margin="0,24,0,4"
                            HeightRequest="18"
                            FontSize="12"
                            Text="Process *"
                            TextColor="{DynamicResource Gray-800}" />

</stacklayout>

Ответы [ 2 ]

0 голосов
/ 04 августа 2020

так что это xaml, как мне добавить его в c# точно. подскажите пожалуйста?

Вы можете добавить метку в c# например:

var myLabel = new Label { Text = "This is text.", HeightRequest = 18, FontSize = 12,TextColor= Color.Red };

Вы можете прочитать документ про метку и там примеры кода для c# и xaml.

0 голосов
/ 03 августа 2020

в обработчике события нажатия кнопки

protected void AddStack(object sender, EventArgs args)
{
    // create UI elements
    var newStack = new StackLayout { ... };
    var label1 = new Label { ... };
    var label2 = new Label { ... };
    var button = new Button { ... };

    button.Clicked += DeleteSection;

    // add to stack
    newStack.Children.Add(label1);
    newStack.Children.Add(label2);

    // add to existing outer layout container
    outerStack.Children.Add(newStack);
}

protected void DeleteSection(object sender, EventArgs args)
{
  var button = (Button)sender;
  // find the button's parent
  var parent = button.Parent;

  outerstack.Children.Remove(parent);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...