enlace de datos WinForms ComboBox Suponga que está haciendo algo como lo siguienteGotcha
List<string> myitems = new List<string>
{
"Item 1",
"Item 2",
"Item 3"
};
ComboBox box = new ComboBox();
box.DataSource = myitems;
ComboBox box2 = new ComboBox();
box2.DataSource = myitems
Así que ahora tenemos 2 cuadros combinados con destino a la matriz, y todo funciona bien. Pero cuando cambia el valor de un cuadro combinado, cambia AMBOS cuadros combinados al que acaba de seleccionar.
Ahora, sé que las matrices siempre se pasan por referencia (aprendí eso cuando aprendí C: D), pero ¿por qué en la tierra cambiarían los cuadros combinados? No creo que el control del cuadro combinado modifique la colección.
Como solución, no hacerlo sería lograr el funcionalidad que se espera/deseada
ComboBox box = new ComboBox();
box.DataSource = myitems.ToArray();
Parece un gran esfuerzo no proporcionar ningún beneficio y hacer que los controles de enlace de datos sean completamente contra-intuitivos. – Belmiris