Este documento describe cómo agregar autocompletado a un textbox y combobox en C# usando una base de datos. Se crea una clase estática que contiene métodos para cargar datos de la base de datos y crear una colección de autocompletado. En el evento Load del formulario, se configuran las propiedades del textbox y combobox para habilitar el autocompletado usando esta colección de datos. El combobox requiere una lista adicional para cargar los datos normalmente.
Este documento describe cómo agregar autocompletado a un textbox y combobox en C# usando una base de datos. Se crea una clase estática que contiene métodos para cargar datos de la base de datos y crear una colección de autocompletado. En el evento Load del formulario, se configuran las propiedades del textbox y combobox para habilitar el autocompletado usando esta colección de datos. El combobox requiere una lista adicional para cargar los datos normalmente.
Este documento describe cómo agregar autocompletado a un textbox y combobox en C# usando una base de datos. Se crea una clase estática que contiene métodos para cargar datos de la base de datos y crear una colección de autocompletado. En el evento Load del formulario, se configuran las propiedades del textbox y combobox para habilitar el autocompletado usando esta colección de datos. El combobox requiere una lista adicional para cargar los datos normalmente.
Para este ejemplo cree una pequea base de datos llamada Eurocopa(aprovechando que ya se acerca la euro xD), la base de datos solo tiene una tabla llamada pases y con 2 campos id ypas.
El diseo de la aplicacin tambien sera algo sencillo solo tendr un textbox y un combobox.
Ahora lo que aremos es agregar una nueva clase a nuestro proyecto en mi caso le llamareAutoCompleClass.cs y lo primero que aremos es agregar los siguientes espacios de nombres que necesitaremos. using System.Data.SqlClient; using System.Configuration; using System.Windows.Forms;
Ahora lo que aremos es hacer la clase publica y esttica y agregaremos 2 mtodos que usaremos. public static class AutoCompleClass { //metodo para cargar los datos de la bd public static DataTable Datos() { 2
DataTable dt = new DataTable();
SqlConnection conexion = new SqlConnection(ConfigurationManager.ConnectionStrings["default"].ToString());//cadena conexion
string consulta = "SELECT * FROM PAISES"; //consulta a la tabla paises SqlCommand comando = new SqlCommand(consulta,conexion);
SqlDataAdapter adap = new SqlDataAdapter(comando);
adap.Fill(dt); return dt; }
//metodo para cargar la coleccion de datos para el autocomplete public static AutoCompleteStringCollection Autocomplete() { DataTable dt = Datos();
AutoCompleteStringCollection coleccion = new AutoCompleteStringCollection(); //recorrer y cargar los items para el autocompletado foreach (DataRow row in dt.Rows) { coleccion.Add(Convert.ToString(row["pais"])); }
return coleccion; } }
El primer mtodo llamado Datos se usa para cargar los datos de nuestra base de datos y el mtodo Autocomplete es el que servir para cargar los datos del autocomplete, los 2 mtodos son sencillos de comprender y lleva comentada las partes mas importantes. Ahora lo que aremos es crear el evento load de nuestro formulario y tendr el siguiente cdigo. private void Form1_Load(object sender, EventArgs e) { //cargar los datos para el autocomplete del textbox textBox1.AutoCompleteCustomSource = AutoCompleClass.Autocomplete(); textBox1.AutoCompleteMode = AutoCompleteMode.Suggest; textBox1.AutoCompleteSource = AutoCompleteSource.CustomSource;
// Cargo los datos que tendra el combobox comboBox1.DataSource = AutoCompleClass.Datos(); comboBox1.DisplayMember = "pais"; comboBox1.ValueMember = "id";
// cargo la lista de items para el autocomplete dle combobox comboBox1.AutoCompleteCustomSource = AutoCompleClass.Autocomplete(); comboBox1.AutoCompleteMode = AutoCompleteMode.Suggest; comboBox1.AutoCompleteSource = AutoCompleteSource.CustomSource; }
El primer bloque sirve para el autocomplete del textbox, que se hace con el uso de 3 propiedades, 3
AutoCompleteCustomSource que es la propiedad que obtiene la coleccin de datos que servirn para el autocomplete, AutoCompleteMode indica el modo de autocomplete yAutoCompleteSource indica de dnde se sacarn las sugerencias de rellenado automtico. El segundo y tercer bloque es para el autocomplete del combobox que a diferencia del textbox este necesita de 2 listas una para cargar los datos normalmente con el DataSource y la otra para el autocomplete. Capturas
Inteligencia artificial: Lo que usted necesita saber sobre el aprendizaje automático, robótica, aprendizaje profundo, Internet de las cosas, redes neuronales, y nuestro futuro
Excel para principiantes: Aprenda a utilizar Excel 2016, incluyendo una introducción a fórmulas, funciones, gráficos, cuadros, macros, modelado, informes, estadísticas, Excel Power Query y más