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
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));
}
}
}