none
ayuda con un textBox RRS feed

  • Pregunta

  • buenas tardes   mi pregunta es como se puede hacer  si quiero que cuando vaya escribiendo muestre un desplegable  donde le de opciones digamos si escribe "ca" le saldrán :casa , carlos , caceres  palabras para autocompletar tipo google si alguien me puede explicar 
    jueves, 28 de abril de 2016 13:23

Todas las respuestas

  • hola

    podrias implementar al autocomplete del textbox

    C# – AutoComplete ComboBox o TextBox

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 28 de abril de 2016 13:35
  • gracias si eso  lo que busco  aunque las palabras tiene que encontrarlas en la base de datos seria lo mismo  pero modificando para que el dt   se el resultado de una consulta digamos  aunque lo que quiero es que la palabra salga debajo de lo que esta escribiendo tipo google  yo creo que lo que me has pasado  lo escribe ya no esa  es mi duda 

     =@"select * from tbcliente algo asi ??? 

    public static AutoCompleteStringCollection LoadAutoComplete()
    {
        DataTable dt = LoadDataTable();
     
        AutoCompleteStringCollection stringCol = new AutoCompleteStringCollection();
     
        foreach (DataRow row in dt.Rows)
        {
            stringCol.Add(Convert.ToString(row["Nombre"]));
        }
     
        return stringCol;
    }

    jueves, 28 de abril de 2016 13:53
  • Hola,

    Estás usando SQL como gestor de base de datos?

    Si es así, aquí hay un hilo que te puede ayudar, autocomplete C# y SQL.

    Tu consulta sería :

    select distinct miCampo from MiTabla

    Saludos.


    JC NaupaCrispín
    Lima - Perú

    La magia no existe, la programación SI

    viernes, 29 de abril de 2016 1:13
  • mi amigo esa es facil de responder dentro de las propiedades del textbox tenemos el AutoCompleteCustomSource que es para apuntar atraves de un objeto AutoCompleteStringCollection, tu metodo para traer atraves de um objeto está bien, pero tendria que ser dentro del evento Textbox_textchanged, tendrias que criar um objeto donde apuntas este metodo y yo no lo haria static para poder criar heranza

    pero bueno aqui te paso un codigo simples para que tengas una idea de como tendrias que hacer el codigo

               

       private void textBox1_TextChanged(object sender, EventArgs e)
            {
                AutoCompleteStringCollection MarcasCarros = new AutoCompleteStringCollection();

                MarcasCarros.Add("Mercedez Brasil");
                MarcasCarros.Add("Volkswagen Brasil");
                MarcasCarros.Add("Fiat Brasil");
                MarcasCarros.Add("Peugeot Brasil");
                MarcasCarros.Add("Ford Brasil");
                MarcasCarros.Add("Mercedez Alemanha");
                MarcasCarros.Add("Volkswagen Alemanha");
                MarcasCarros.Add("Fiat Italia");
                MarcasCarros.Add("Peugeot França");
                MarcasCarros.Add("Ford USA");
                textBox1.AutoCompleteCustomSource = MarcasCarros;
                textBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
                textBox1.AutoCompleteSource = AutoCompleteSource.CustomSource;

            }

    o tambien podrias hacer esto, que creo que es mucho mejor

        private void Form1_Load(object sender, EventArgs e)
            {
                AutoCompleteStringCollection MarcasCarros = new AutoCompleteStringCollection();

                MarcasCarros.Add("Mercedez Brasil");
                MarcasCarros.Add("Volkswagen Brasil");
                MarcasCarros.Add("Fiat Brasil");
                MarcasCarros.Add("Peugeot Brasil");
                MarcasCarros.Add("Ford Brasil");
                MarcasCarros.Add("Mercedez Alemanha");
                MarcasCarros.Add("Volkswagen Alemanha");
                MarcasCarros.Add("Fiat Italia");
                MarcasCarros.Add("Peugeot França");
                MarcasCarros.Add("Ford USA");
                //textBox1.AutoCompleteCustomSource = MarcasCarros;
                //textBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
                //textBox1.AutoCompleteSource = AutoCompleteSource.CustomSource;

           

         var Textbox = new TextBox
                {
                    AutoCompleteCustomSource = MarcasCarros,
                    AutoCompleteMode = AutoCompleteMode.SuggestAppend,
                    AutoCompleteSource = AutoCompleteSource.CustomSource,
                    Location = new Point(20, 20),
                    Width = ClientRectangle.Width - 50,
                    Visible = true
                     

                };



                Controls.Add(Textbox);

        }

    La cosa es ahi ya te da una idea

    Espero que te haiga ayudado


    Lander P.S Herrera





    viernes, 29 de abril de 2016 1:56