Nazwa forum

Niestety, nikt nie powie Ci czym jest FluxBB - musisz go poznać sam!

Nie jesteś zalogowany na forum.

#1 2018-06-04 23:20:38

xaml
Administrator
Dołączył: 2018-06-04
Liczba postów: 7
WindowsChrome 66.0.3359.181

Przekazywanie danych między stronami

public class DaneUzytkownika
    {
        public string login { get; set; }
        public string password { get; set; }

        public DaneUzytkownika(string _login, string _password)
        {
            login = _login;
            password = _password;
        }

    }

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:local="clr-namespace:Przyklad4"
             x:Class="Przyklad4.MainPage">
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="*" />
            <RowDefinition Height="*" />
            <RowDefinition Height="*" />
            <RowDefinition Height="*" />
        </Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="*" />
            <ColumnDefinition Width="*" />
        </Grid.ColumnDefinitions>

        <Label Grid.Row="0"
               Grid.Column="0"
               Grid.ColumnSpan="2"
               FontSize="30"
               VerticalTextAlignment="Center"
               HorizontalTextAlignment="Center"
               Text="LOGOWANIE" />
        <Label Grid.Row="1"
               Grid.Column="0"
               Text="Login:"/>
        <Entry x:Name="entryLogin"
               Grid.Row="1"
               Grid.Column="1" />
        <Label Grid.Row="2"
               Grid.Column="0"
               Text="Password:"/>
        <Entry x:Name="entryPassword"
               Grid.Row="2"
               Grid.Column="1"
               IsPassword="True"/>
        <Button x:Name="buttonPolacz"
                Grid.Row="3"
                Grid.Column="0"
                Grid.ColumnSpan="2"
                Text="Połącz"
                Clicked="OnbuttonPolaczClicked"/>

    </Grid>
</ContentPage>

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

namespace Przyklad4
{
    public partial class MainPage : ContentPage
    {
       

        public MainPage()
        {
            InitializeComponent();
            NavigationPage.SetHasNavigationBar(this, false);
        }

        async void OnbuttonPolaczClicked(object sender, EventArgs e)
        {
            DaneUzytkownika uzytkownik = new DaneUzytkownika(entryLogin.Text, entryPassword.Text);

            await Navigation.PushAsync(new StronaWynikowa(uzytkownik));
        }

    }
}

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="Przyklad4.StronaWynikowa">
    <ContentPage.Content>
        <StackLayout>
            <Label x:Name="labelLogin"
                VerticalOptions="CenterAndExpand"
                HorizontalOptions="CenterAndExpand" />
            <Label x:Name="labelPassword"
                VerticalOptions="CenterAndExpand"
                HorizontalOptions="CenterAndExpand" />
        </StackLayout>
    </ContentPage.Content>
</ContentPage>

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using Xamarin.Forms;
using Xamarin.Forms.Xaml;

namespace Przyklad4
{
    [XamlCompilation(XamlCompilationOptions.Compile)]
    public partial class StronaWynikowa : ContentPage
    {
        private DaneUzytkownika _uzytkownik;

        public StronaWynikowa (DaneUzytkownika uzytkownik)
        {

            InitializeComponent ();

            _uzytkownik = new DaneUzytkownika(uzytkownik.login, uzytkownik.password);

            labelLogin.Text = _uzytkownik.login;
            labelPassword.Text = _uzytkownik.password;
        }
    }
}

Wiadomość dodana po 06 min 16 s:

public class DaneUzytkownika
    {
        public string login { get; set; }
        public string password { get; set; }

        public DaneUzytkownika(string login, string password)
        {
            this.login = login;
            this.password = password;
        }
    }

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:local="clr-namespace:Przyklad5"
             x:Class="Przyklad5.MainPage"
             Title="START">
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="*"/>
            <RowDefinition Height="*"/>
            <RowDefinition Height="*"/>
        </Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="*"/>
            <ColumnDefinition Width="*"/>
        </Grid.ColumnDefinitions>

        <Label Text="Login:"
               Grid.Row="0"
               Grid.Column="0"/>
        <Entry x:Name="entryLogin"
               Grid.Row="0"
               Grid.Column="1"/>
        <Label Text="Password:"
               Grid.Row="1"
               Grid.Column="0"/>
        <Entry x:Name="entryPassword"
               Grid.Row="1"
               Grid.Column="1"
               IsPassword="True"/>
        <Button x:Name="buttonLogin1"
                Grid.Row="2"
                Grid.Column="0"
                Text="LOGIN 1"
                Clicked="buttonLoginClicked"/>
        <Button x:Name="buttonLogin2"
                Grid.Row="2"
                Grid.Column="1"
                Text="LOGIN 2"
                Clicked="buttonLoginClicked"/>
    </Grid>


</ContentPage>

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

namespace Przyklad5
{
    public partial class MainPage : ContentPage
    {
        public MainPage()
        {
            InitializeComponent();
        }

        async void buttonLoginClicked(object sender, EventArgs e)
        {
            var button = sender as Button;

            DaneUzytkownika user = new DaneUzytkownika(entryLogin.Text, entryPassword.Text);

            if (button.Equals(buttonLogin1))
            {
                var userDataPage = new PageUserData();
                userDataPage.BindingContext = user;
                await Navigation.PushAsync(userDataPage);
            }
            if (button.Equals(buttonLogin2))
            {
                var userDataPage = new PageUserData2();
                userDataPage.BindingContext = user;
                await Navigation.PushAsync(userDataPage);
            }
        }

    }
}

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="Przyklad5.PageUserData"
             Title="STRONA 1">
    <ContentPage.Content>
        <StackLayout>
            <Label Text="Login" />
            <Entry x:Name="entryLogin"
                   Text="{Binding login}"/>

            <Label Text="Password" />
            <Entry x:Name="entryPassword"
                   Text="{Binding password}"/>

        </StackLayout>
    </ContentPage.Content>
</ContentPage>

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using Xamarin.Forms;
using Xamarin.Forms.Xaml;

namespace Przyklad5
{
    [XamlCompilation(XamlCompilationOptions.Compile)]
    public partial class PageUserData : ContentPage
    {
        public PageUserData ()
        {
            InitializeComponent ();
        }
    }
}

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="Przyklad5.PageUserData2"
             Title="STRONA 2">
    <ContentPage.Content>
        <StackLayout>
            <Label Text="Login" />
            <Entry x:Name="entryLogin"/>

            <Label Text="Password" />
            <Entry x:Name="entryPassword"/>
        </StackLayout>
    </ContentPage.Content>
</ContentPage>

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using Xamarin.Forms;
using Xamarin.Forms.Xaml;

namespace Przyklad5
{
    [XamlCompilation(XamlCompilationOptions.Compile)]
    public partial class PageUserData2 : ContentPage
    {
        public PageUserData2 ()
        {
            InitializeComponent ();

            entryLogin.SetBinding(Entry.TextProperty, "login");
            entryPassword.SetBinding(Entry.TextProperty, "password");
        }
    }
}

Offline

Użytkowników czytających ten temat: 0, gości: 1
[Bot] ClaudeBot