Quiero usar un ComboBox con el estilo DropDownList (el que lo hace parecer un botón para que no pueda ingresar un valor) para insertar un valor en un cuadro de texto. Quiero que el cuadro combinado tenga una etiqueta de texto llamada 'Comodines' y cuando selecciono un comodín de la lista, el valor seleccionado se inserta en un cuadro de texto y el texto del cuadro combinado sigue siendo 'Comodín'. Mi primer problema es que no puedo establecer un valor de texto cuando el cuadro combinado está en estilo DropDownList. Al utilizar las propiedades, la paleta no funciona, el valor del texto simplemente se borra al hacer clic en off, y se agrega comboBox.Text = "Comodines"; form_load tampoco funciona. ¿Alguien puede ayudar?C# ComboBox en estilo DropDownList, ¿cómo configuro el texto?
Respuesta
El código que especifique:
comboBox.Text = "Wildcards";
... debería funcionar. La única razón por la que no lo haría es porque el texto que especifique no es un elemento dentro de la lista de elementos del comboBox. Al usar el estilo DropDownList, solo puede establecer el texto en los valores que realmente aparecen en la lista.
Si es el caso de que está tratando de configurar el texto en comodines y ese elemento no aparece en la lista, y una solución alternativa no es aceptable, es posible que tenga que estar un poco sucio con el código y agregar un elemento que se elimina temporalmente cuando se expande la lista desplegable.
Por ejemplo, si tiene un formulario que contiene un cuadro combinado llamado "comboBox1" con algunos artículos y un botón llamado "botón 1" se podría hacer algo como esto:
private void button1_Click(object sender, EventArgs e)
{
if (!comboBox1.Items.Contains("Wildcards"))
{
comboBox1.Items.Add("Wildcards");
}
comboBox1.Text = "Wildcards";
}
private void comboBox1_DropDown(object sender, EventArgs e)
{
if (comboBox1.Items.Contains("Wildcards"))
comboBox1.Items.Remove("Wildcards");
}
Eso es bastante rápido y sucio, pero por capturando el evento DropDownClosed también podría limpiarlo un poco, agregando el elemento "Comodines" de vuelta según sea necesario.
Prueba este
comboBox1.SelectedValue = "Wildcards";
Esto puede ser una posible solución:
comboBox1.SelectedValue = comboBox1.Items.FindByText("Wildcards").Value;
Puede seleccionar uno de los elementos en FormLoad o en forma de constructor:
public MyForm()
{
InitializeComponent();
comboBox.SelectedIndex = 0;
}
o
private void MyForm_Load(object sender, EventArgs e)
{
comboBox.SelectedIndex = 0;
}
Me encanta lo limpia que es esta solución. +1 –
- 1. Cómo cambiar el estilo de ComboBox de celda en DataGridViewComboBoxColumn
- 2. ¿Cómo puedo forzar que un ComboBox estilo DropDownList solo se abra cuando el usuario hace clic en el botón desplegable?
- 3. ¿Cómo configuro la altura de un ComboBox?
- 4. Estilo Elementos WPF ComboBox
- 5. Encontrar el índice DropDownList por texto
- 6. ¿Cómo configuro el texto de un GtkTextView?
- 7. Borrar texto seleccionado ComboBox
- 8. ¿Cómo establecer maxlength para combobox en WPF?
- 9. ComboBox.SelectedValue no coincide con el texto cuando DropDownStyle = DropDownList está representada en Windows 7
- 10. Cómo configuro un valor predeterminado de ComboBox de VB.Net
- 11. ¿Cómo un Combobox con el estilo csOwnerDrawFixed puede comportarse como el estilo csDropDown?
- 12. C# cambio DropDownList caso
- 13. ASP.NET 4.0 DropDownList con comillas simples en el texto
- 14. Establecer texto de ComboBox en la selección
- 15. Cómo obtener los datos en ComboBox C#
- 16. ¿Cómo cambio el texto de un elemento ComboBox?
- 17. VS2010/C#: ¿Cómo se establece el valor predeterminado de un ComboBox en el IDE?
- 18. C# Messagebox Con ComboBox
- 19. C# cómo establecer el valor predeterminado dropDownList para selectedValue = null
- 20. Combobox y autocompletar en C#
- 21. Resharper 5: ¿Cómo configuro el estilo de formato predeterminado para los bloques de código en línea?
- 22. DropDownList obtener el objeto subyacente
- 23. Cómo configuro un Gtk.StatusIcon como Texto
- 24. Autocompletar ComboBox C#
- 25. Cómo mostrar texto demasiado largo correctamente en WPF ComboBox
- 26. Android: ¿Cómo configuro el tamaño de texto para un diseño?
- 27. ¿Cómo configuro el color de una etiqueta de texto NSButtonCell?
- 28. Botón WPF IsEnabled Basado en ComboBox Selección Sobrescritura estilo predeterminado
- 29. C# winforms combobox dynamic autocomplete
- 30. ¿Cómo configuro el primer respondedor?
Gracias por eso, aprendí mucho de mi C# del sitio web blackwasp y todavía me refiero a él. ¡Gracias! –
Le doy la más cordial bienvenida :-) – BlackWasp
Por extraño que parezca, establecer la propiedad "Texto" dentro del diseñador de formularios no es suficiente; en mi caso, debe establecerse en el código subyacente. Intentar establecerlo desde la ventana de propiedades del formulario simplemente borrará la propiedad "Texto" después de hacer clic en ella. – Rachael