Ao trocar as propriedades da Classe Detalhe View para a Classe Veiculo.cs o compilador acusa que não existe o nome no contexto atual, apesar do uso da diretiva using indicando os namespaces
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Ao trocar as propriedades da Classe Detalhe View para a Classe Veiculo.cs o compilador acusa que não existe o nome no contexto atual, apesar do uso da diretiva using indicando os namespaces
Oi Bruno, tudo bem? Por favor, tente excluir todas as pastas bin e obj e executar uma limpeza e rebuild completos na sua solução. Se não funcionar, nos avise. Obrigado!
O erro continua, abaixo se encontram os codigos das pastas Veiculo.cs e DetalheView.xaml.cs
//Veiculo.cs
using System;
using System.Collections.Generic;
using System.Text;
namespace Xamarin1_Alura.Models
{
public class Veiculo
{
public const int Ar_Condicionado = 1000;
public const int ABS = 800;
public const int Central_Multimidia = 500;
public string Nome { get; set; }
public double Valor { get; set; }
public string ValorFormatado
{
get
{
return $"R${Valor}";
}
}
public bool TemABS { get; set; }
public bool TemArCondicionado { get; set; }
public bool TemMultimidia { get; set; }
public Veiculo(string nome,double valor)
{
Nome = nome;
Valor = valor;
}
}
}//DetalheView.Xaml.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Xamarin.Forms;
using Xamarin.Forms.Xaml;
using Xamarin1_Alura.Models;
namespace Xamarin1_Alura.Views
{
[XamlCompilation(XamlCompilationOptions.Compile)]
public partial class DetalheView : ContentPage
{
private double _valortotal;
private bool _temfreioABS;
private bool _temMultimidia;
private bool _temAr;
public string NomeVeiculo { get; set; }
public string TextoABS{ get { return $"Freio ABS - {Veiculo.ABS}"; } }
public string TextoCentralMultimidia { get { return $"Central Multimidia - {Veiculo.Central_Multimidia}"; } }
public string TextoArCondicionado { get { return $"Ar Condicionado - {Veiculo.Ar_Condicionado}"; } }
public bool Freio
{
get
{
return Veiculo.TemABS; //ERRO CS120 AQUI
}
set
{
TemABS = value; //ERRO CS103 AQUI
OnPropertyChanged(nameof(ValorTotal));
}
}
public bool Multimidia
{
get
{
return _temMultimidia;
}
set
{
_temMultimidia = value;
OnPropertyChanged(nameof(ValorTotal));
}
}
public bool ArCondicionado
{
get
{
return _temAr;
}
set
{
_temAr = value;
OnPropertyChanged(nameof(ValorTotal));
}
}
public string ValorTotal
{ get
{
return $"Valor Total: R${_valortotal + (_temfreioABS ? Veiculo.ABS : 0) + (_temAr ? Veiculo.Ar_Condicionado : 0) + (_temMultimidia ? Veiculo.Central_Multimidia : 0)}"; //se _temfreioABS retorna true soma valor total com ABS senão soma com 0
}
}
public DetalheView(Veiculo veiculo)
{
NomeVeiculo = veiculo.Nome;
_valortotal = veiculo.Valor;
InitializeComponent();
BindingContext = this;
}
private void ButtonProximo_Clicked(object sender, EventArgs e)
{
Navigation.PushAsync(new ContatoView(NomeVeiculo));
}
}
}