Как показать результат по нажатию кнопки в Xamarin - PullRequest
0 голосов
/ 28 апреля 2020

Считай, что я начинающий разработчик приложений, который еще ничего не разработал :) Мне нравится, когда "число" x2 (умножается на 2) отображается перед "результатом" после нажатия"Расчет" кнопка. также, как я могу показать результат на другой странице / экране? вот пи c приложения введите описание изображения здесь

вот мой код: MainPage.xaml

<StackLayout>


    <Label
            Text="Give me a number"
            Margin="0,50,0,0" Padding="13,0,0,0"/>

    <Entry Placeholder="number"
           x:Name="numb"
           Keyboard="Numeric"
           Margin="130,-30,40,0"
           Opacity="1" Rotation="0"
           TranslationX="16" />

    <Button Text="  Calculate  "
            BackgroundColor="#F6DEDE"
            FontSize="Large"
            FontAttributes="Bold" 
            />
    <Label
        Text=" Result "
        FontSize="30"
        Margin="0, 20, 0, 0"
        Padding="10,0,0,0"/>

</StackLayout>

Вот MainPage.xaml.cs:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Xamarin.Forms;

namespace Test
{
    [DesignTimeVisible(false)]
    public partial class MainPage : ContentPage
    {
         public MainPage()
        {
            InitializeComponent();
        }
      void CalculateClicked(object sender, EventArgs args)
       {
           float numb = float.Parse(this.numb.Text);

            float B = 100 * numb * 2;
            // show B in front of result or on another page

        }
    }
}

Ответы [ 3 ]

1 голос
/ 28 апреля 2020

сначала, дайте имя вашей метке

<Label x:Name="result"
    Text=" Result "
    FontSize="30"
    Margin="0, 20, 0, 0"
    Padding="10,0,0,0"/>

Теперь вы должны установить результат в метке

   void CalculateClicked(object sender, EventArgs args)
   {
       float numb = float.Parse(this.numb.Text);

       float B = 100 * numb * 2;

       result.Text = $": {B}";
    }
0 голосов
/ 28 апреля 2020

Поскольку оба ответа уже указывают, вам нужно дать имя метке в xaml, а затем использовать ее в коде для установки текста.

void CalculateClicked(object sender, EventArgs args)
{
    float numb = float.Parse(this.numb.Text);

    float B = 100 * numb * 2;
    // show B in front of result or on another page

    resultLabel.Text = B.ToString();
}

Еще одна вещь, которая вам нужна сделать, это добавить событие нажатия на кнопку и назначить CalculateClicked для нее. Затем, когда вы нажмете кнопку, будет запущен метод CalculateClicked:

<Button Text="  Calculate  "
    BackgroundColor="#F6DEDE"
    FontSize="Large"
    FontAttributes="Bold" 

    Clicked="CalculateClicked"

    />
0 голосов
/ 28 апреля 2020

сначала дайте Label имя

<Label x:Name="lblResult"
    Text=" Result "
    FontSize="30"
    Margin="0, 20, 0, 0"
    Padding="10,0,0,0"/>

, затем вы можете присвоить ему значение из кода

void CalculateClicked(object sender, EventArgs args)
   {
       float numb = float.Parse(this.numb.Text);

        float B = 100 * numb * 2;
        // show B in front of result or on another page

        lblResult.Text += ": " + B.ToString();
    }
...