none
Error en codigo en el Load de mi formulario Login en C# RRS feed

  • Pregunta

  • Estoy tratando de cargar datos usando un Dataset pero en Load del formualrio no me reconoce el Datset Consulta.

    Me dice que: El nombre "Consulta" no existe en el contexto actual.

    Este es mi código:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;

    namespace TresCapas_Colegio
    {
        public partial class FrmLogin : Form
        {
            public FrmLogin()
            {
                DatPersonal ds = new DatPersonal();
                DatPersonalTableAdapters.usuariosTableAdapter Consulta = new DatPersonalTableAdapters.usuariosTableAdapter();


               InitializeComponent();
            }

            private void CbUsuario_SelectedIndexChanged(object sender, EventArgs e)
            { 
                InitializeComponent();
            }

            private void FrmLogin_Load(object sender, EventArgs e)
            {


                   try
                    {
                   

                  Consulta.Fill(ds.usuarios);
                   CbUsuario.DataSource = ds.usuarios;
                   CbUsuario.DisplayMember = "Usuario";
                }
                catch (Exception)
                {
                    
                   throw;
                }
            }
        }
    }

    viernes, 9 de junio de 2017 12:24

Respuestas

  • El símbolo está declarado dentro del bloque del constructor. Ese es su alcance y el tiempo de su existencia.

    Decláralo fuera de allí. A nivel de la clase.

    ---

    ¿por qué vuelves a inicializar el formulario dentro del evento del combo? No hagas eso. Si lo que necesitas es dar valores iniciales a los objetos del formulario, crea un método y llámalo cada vez que lo necesites (incluyendo luego del initializecomponent del constructor). Esa es la manera de hacerlo.


    viernes, 9 de junio de 2017 13:16