protected async override void OnNavigatedTo(NavigationEventArgs e)
        {

            pessoa = (Pessoa)e.Parameter;

            if (!pessoa.isPessoaFisica)
            {
                Sp_Currículo.Visibility = Visibility.Collapsed;
            }

            carregar.Visibility = Visibility.Visible;
            var itens = await EnderecoTable.ToCollectionAsync<Endereco>();
            List<Endereco> enderecos = itens.ToList();
            foreach (Endereco end in enderecos)
            {
                if (pessoa.Id.Equals(end.PessoaId))
                {
                    endereco = end;
                }
            }

            // Specify the location address
            string addressToGeocode = endereco.Rua + ", " + endereco.numero + ", " + endereco.bairro + ", " + endereco.cidade + " - " + endereco.estado;

            // Nearby location to use as a query hint.
            BasicGeoposition queryHint = new BasicGeoposition();
            queryHint.Latitude = -8.05665;
            queryHint.Longitude = -34.898441;
            Geopoint hintPoint = new Geopoint(queryHint);

            // Geocode the specified address, using the specified reference point
            // as a query hint. Return no more than 3 results.
            MapLocationFinderResult result = await MapLocationFinder.FindLocationsAsync(addressToGeocode, hintPoint, 3);

            //Setting position default to Derby - Recife
            BasicGeoposition cityPosition = new BasicGeoposition() { Latitude = -8.05665, Longitude = -34.898441 };
            Geopoint cityCenter = new Geopoint(cityPosition);
            // If the query returns results, display the coordinates
            // of the first result.
            if (result.Status == MapLocationFinderStatus.Success)
            {
                cityPosition = new BasicGeoposition() { Latitude = result.Locations[0].Point.Position.Latitude, Longitude = result.Locations[0].Point.Position.Longitude };
                cityCenter = new Geopoint(cityPosition);
            }

            // Set map location
            MapControl.Center = cityCenter;
            MapControl.ZoomLevel = 14;
            MapControl.LandmarksVisible = true;

            var itens2 = await AnuncioTable.ToCollectionAsync<Anuncio>();
            List<Anuncio> anuncios = itens2.ToList();
            //Marcando os pontos no mapa

            MapItems.ItemsSource = poiManager.ListarAnuncios(anuncios);
            carregar.Visibility = Visibility.Collapsed;
        }
        public MapaPage()
        {
            this.InitializeComponent();
            poiManager = new PontosNoMapaManeger();
            endereco = new Endereco();
            pessoa = new Pessoa();

            SystemNavigationManager.GetForCurrentView().AppViewBackButtonVisibility = AppViewBackButtonVisibility.Collapsed;
        }
        public CadastroPage()
        {
            this.InitializeComponent();
            Window.Current.SizeChanged += Current_SizeChanged;

            
            endereco = new Endereco();
            usuario = new Usuario();
            pessoa = new Pessoa();
            this.pessoa.sexo = "Masculino";
            this.pessoa.isPessoaFisica = true;

            // visibility of the Back button
            SystemNavigationManager.GetForCurrentView().BackRequested += OnBackRequested;

            SystemNavigationManager.GetForCurrentView().AppViewBackButtonVisibility = AppViewBackButtonVisibility.Visible;

        }
 protected override void OnNavigatedTo(NavigationEventArgs e)
 {
     pessoa = (Pessoa)e.Parameter;
 }
        protected async override void OnNavigatedTo(NavigationEventArgs e)
        {
            pessoa = (Pessoa)e.Parameter;
            carregar.Visibility = Visibility.Visible;
            var itens = await EnderecoTable.ToCollectionAsync<Endereco>();
            List<Endereco> enderecos = itens.ToList();
            foreach (Endereco end in enderecos)
            {
                if (pessoa.Id.Equals(end.PessoaId))
                {
                    endereco = end;
                }
            }

            carregar.Visibility = Visibility.Collapsed;

            if (pessoa.isPessoaFisica)
            {
                tB_salario.PlaceholderText = "Valor Proposto:";
            }
            else
            {
                tB_salario.PlaceholderText = "Salário para a vaga:";
            }

         
        }
 public MainPage()
 {
     this.InitializeComponent();
     Window.Current.SizeChanged += Current_SizeChanged;
     pessoa = new Pessoa();
 }
        private async void Salvar_Click(object sender, RoutedEventArgs e)
        {
            if (!Tb_nome.Text.Equals(""))
            {
                if (isCpfValido)
                {
                    if (isEmailValido)
                    {
                        if (!Tb_rua.Text.Equals(""))
                        {
                            if (!Tb_bairro.Text.Equals(""))
                            {
                                if (!Tb_cidade.Text.Equals(""))
                                {
                                    if (isEstadoSelecionado)
                                    {
                                        if (!Tb_usuario.Text.Equals(""))
                                        {
                                            if (!Pb_senha.Password.Equals(""))
                                            {
                                                carregar.Visibility = Visibility.Visible;
                                                //Pegando as posições geograficas 
                                                string addressToGeocode = Tb_rua.Text + ", " + Tb_numero.Text + ", " + Tb_bairro.Text + ", " + Tb_cidade.Text + " - " + endereco.estado;

                                                // Nearby location to use as a query hint.
                                                BasicGeoposition queryHint = new BasicGeoposition();
                                                queryHint.Latitude = -8.05665;
                                                queryHint.Longitude = -34.898441;
                                                Geopoint hintPoint = new Geopoint(queryHint);

                                                // Geocode the specified address, using the specified reference point
                                                // as a query hint. Return no more than 3 results.
                                                MapLocationFinderResult result = await MapLocationFinder.FindLocationsAsync(addressToGeocode, hintPoint, 3);

                                                //Setting position default to Derby - Recife
                                                BasicGeoposition cityPosition = new BasicGeoposition() { Latitude = -8.05665, Longitude = -34.898441 };
                                                Geopoint cityCenter = new Geopoint(cityPosition);

                                                // If the query returns results, display the coordinates  of the first result.
                                                if (result.Status == MapLocationFinderStatus.Success)
                                                {
                                                    endereco.latitude = result.Locations[0].Point.Position.Latitude;
                                                    endereco.longitude = result.Locations[0].Point.Position.Longitude;
                                                    
                                                    if(pessoa == null)
                                                    {
                                                        pessoa = new Pessoa();
                                                        if (Rb_fisica.IsChecked == true)
                                                        {
                                                            pessoa.isPessoaFisica = true;

                                                            if(Rb_femi.IsChecked == true)
                                                            {
                                                                pessoa.sexo = "Feminino";
                                                            }
                                                            else
                                                            {
                                                                pessoa.sexo = "Masculino";
                                                            }
                                                        }
                                                        else
                                                        {
                                                            pessoa.isPessoaFisica = false;
                                                            pessoa.site = Tb_site.Text;
                                                        }
                                                    }

                                                    pessoa.nomeOuRazaoSocial = Tb_nome.Text;

                                                    pessoa.data = Tb_dataNascimento.Text;

                                                    pessoa.cpfOuCnpj = Tb_cpfOrCnpj.Text;

                                                    pessoa.email = Tb_email.Text;

                                                    pessoa.celular = Tb_celular.Text;

                                                    pessoa.telefone = Tb_telefone.Text;

                                                    usuario.Senha = Pb_senha.Password;

                                                    usuario.Login = Tb_usuario.Text;

                                                    endereco.Rua = Tb_rua.Text;

                                                    endereco.numero = Tb_numero.Text;

                                                    endereco.bairro = Tb_bairro.Text;

                                                    endereco.cidade = Tb_cidade.Text;


                                                    ////Salvando Pessoa
                                                    await PessoaTable.InsertAsync(pessoa);

                                                    endereco.PessoaId = pessoa.Id;
                                                    await EnderecoTable.InsertAsync(endereco);

                                                    usuario.PessoaId = pessoa.Id;
                                                    await UsuarioTable.InsertAsync(usuario);

                                                    carregar.Visibility = Visibility.Collapsed;

                                                    //Direcionamento de Página
                                                    if (Rb_fisica.IsChecked == true)
                                                    {
                                                        var resulta = await CadastroDialog.ShowAsync();
                                                        string resultado = "" + resulta;
                                                        if (resultado.Equals("Primary"))
                                                        {
                                                            Frame.Navigate(typeof(CurriculoPage), pessoa);
                                                        }
                                                        else
                                                        {
                                                            Frame.Navigate(typeof(MapaPage), pessoa);
                                                        }

                                                    }
                                                    else
                                                    {
                                                        Frame.Navigate(typeof(MapaPage), pessoa);
                                                    }

                                                }
                                                else
                                                {
                                                    md.Title = "Erro no Endereço!";
                                                    md.Content = "Não foi possível localizar o endereço no mapa, verifique as informações passadas.";
                                                    await md.ShowAsync();
                                                }

                                            }
                                            else
                                            {
                                                md.Title = "Campo obrigatório não preechido!";
                                                md.Content = "Preencha o campo Senha.";
                                                await md.ShowAsync();
                                                Pb_senha.PlaceholderText = "*Senha";
                                            }
                                        }
                                        else
                                        {
                                            md.Title = "Campo obrigatório não preechido!";
                                            md.Content = "Preencha o campo Usuário.";
                                            await md.ShowAsync();
                                            Tb_usuario.PlaceholderText = "*Usuário";
                                        }
                                    }
                                    else
                                    {
                                        md.Title = "Campo obrigatório não preechido!";
                                        md.Content = "Selecione o estado corretamente.";
                                        await md.ShowAsync();
                                        Cb_estados.PlaceholderText = "*Estado";
                                    }
                                }
                                else
                                {
                                    md.Title = "Campo obrigatório não preechido!";
                                    md.Content = "Preencha o campo cidade.";
                                    await md.ShowAsync();
                                    Tb_cidade.PlaceholderText = "*Cidade";
                                }
                            }
                            else
                            {
                                md.Title = "Campo obrigatório não preechido!";
                                md.Content = "Preencha o campo bairro.";
                                await md.ShowAsync();
                                Tb_bairro.PlaceholderText = "*Bairro";
                            }
                        }
                        else
                        {
                            md.Title = "Campo obrigatório não preechido!";
                            md.Content = "Preencha o campo rua.";
                            await md.ShowAsync();
                            Tb_rua.PlaceholderText = "*Rua";
                        }
                    }
                    else
                    {
                        md.Title = "Campo obrigatório não preechido!";
                        md.Content = "Preencha o campo E-mail.";
                        await md.ShowAsync();
                        Tb_email.PlaceholderText = "*E-mail";
                    }
                }
                else
                {
                    if (Rb_juridica.IsChecked == false)
                    {
                        md.Title = "Campo obrigatório não preechido!";
                        md.Content = "Preencha o campo CPF.";
                        await md.ShowAsync();
                        Tb_cpfOrCnpj.PlaceholderText = "*CPF";
                    }
                    else
                    {
                        md.Title = "Campo obrigatório não preechido!";
                        md.Content = "Preencha o campo CNPJ.";
                        await md.ShowAsync();
                        Tb_cpfOrCnpj.PlaceholderText = "*CNPJ";
                    }
                }
            }
            else
            {
                md.Title = "Campo obrigatório não preechido!";
                md.Content = "Preencha o campo nome.";
                await md.ShowAsync();
                Tb_nome.PlaceholderText = "*Nome";
            }
        }