Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Não encontrada a definição e extensão do método

Está dando o erro "ListagemProcessadores' does not contain a definition for 'Processadores' and no extension method 'Processadores' accepting a first argument of type 'ListagemProcessadores' could be found" no this.Proceessadores = new List no ListagemProcessadores, já procurei e várias vezes e não achei o erro, todos os using estão corretos e classes publicas.

Obs: segui a mesma lógica da aula, só troquei a temática de aluguel para venda de processadores.

ListagemView (View)

public partial class ListagemView : ContentPage
    {
        public List<Processador> Processadores { get; set; }

        public ListagemView()
        {
            InitializeComponent();

            this.Processadores = new ListagemProcessadores().Processadores;

            this.BindingContext = this;
        }

        private void ListViewProcessadores_ItemTapped(object sender, ItemTappedEventArgs e)
        {
            var processador = (Processador)e.Item;

            Navigation.PushAsync(new DetalheView(processador));

            // Sem uso
            //DisplayAlert("Processador", string.Format("Foi selecionado o processador {0}", processador.modelo), "Confirmar");
        }
    }

ListagemProcessadores (Model)

public class ListagemProcessadores
    {
        public ListagemProcessadores()
        {
            Processador processador = new Processador();

            this.Processadores = new List<Processador>
            {
                new Processador { modelo = "Core i3 8350", fabricante = "Intel", nucleos = 4, preco = 700},
                new Processador { modelo = "Core i5 8600", fabricante = "Intel", nucleos = 6, preco = 1000},
                new Processador { modelo = "Core i7 8700", fabricante = "Intel", nucleos = 12, preco = 1500},
                new Processador { modelo = "Ryzen R3 1500", fabricante = "AMD", nucleos = 4, preco = 500},
                new Processador { modelo = "Ryzen R5 1600" , fabricante = "AMD", nucleos = 8, preco = 800},
                new Processador { modelo = "Ryzen R7 1700", fabricante = "AMD", nucleos = 16, preco = 1100}
            };
        }
    }
1 resposta
solução!

Olá, Raul

Sua classe ListagemProcessadores precisa ter uma propriedade pública chamada Processadores. Por exemplo:

public List<Processador> Processadores { get; set; }

Caso contrário, o código da classe ListagemView não conseguirá acessá-la.

Adicione essa propriedade como mostrado acima e tente novamente. Veja se funciona.