Hola amigos , tengo un DataGridview al cual le he predefinido tres columas factura,Valor y una tercera columna del tipo DataGridViewCheckBoxColumn. Cuando hago el Load de la Form que contiene el DataGridViex se cargan los datos del DataSource de la base de datos . En esta misma Form tengo un boton Limpiar para que limpie todos los controles (Textbox, ComboBox,dataGridView) .
Tengo el siguiente método para recorrer todos los controles y limpiarlos , dependiendo del tipo que sean. El problema que tengo es que para el DataGridview no me pinta de nuevo las columnas que predefiní . como hago para que despues que limpie los datos del DataGridView me pinte de nuevo las columnas que habia predefinido inicialmente.
Si alguno tiene un tip que me pueda ayudar , se los agradezco muchisimo.
Ahh y gracias chicos por todas las ayudas que me han brindado.
public static void limpiaForm(Control objContenedor)
{
// para cada control contenido en la colección
foreach (Control obj in objContenedor.Controls)
{
// si tiene hijos, recórrelos de forma recursiva
if (obj.HasChildren) limpiaForm(obj);
if (obj
is TextBox
) ((TextBox
)obj
).Text = ""; if (obj
is CheckBox
) ((CheckBox
)obj
).Checked = false; if (obj
is RadioButton
) ((RadioButton
)obj
).Checked = false; if (obj
is DataGridView
) ((DataGridView
)obj
).DataSource = null; }
}
private void bLimpiar_Click(object sender, EventArgs e)
{
limpiaForm(this);
}