C sharp - Extraer meses de un datetimepicker

 
Vista:
sin imagen de perfil
Val: 19
Ha aumentado su posición en 3 puestos en C sharp (en relación al último mes)
Gráfica de C sharp

Extraer meses de un datetimepicker

Publicado por roger (9 intervenciones) el 06/11/2018 23:20:13
Que tal compañeros mi situacion es la siguiente, tengo 2 datetimepicker, en uno capturo una fecha inicial y en el segundo una fecha final.
Lo que necesito es obtener los MESES que están entre este rango de fechas y estos meses mostrarlos en un combobox.

Meses
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de milton
Val: 43
Ha aumentado 1 puesto en C sharp (en relación al último mes)
Gráfica de C sharp

Extraer meses de un datetimepicker

Publicado por milton (14 intervenciones) el 14/11/2018 16:39:26
saludos roger, una idea de como puedes hacerla:

1. crea un arreglo de meses
1
String[] meses = { "Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre" };

2. para que no redundes en código crea una función por ejemplo
llenarcombo(entre,hasta) que reciba 2 parámetros de tipo int, y que no retorne nada.
le agregas un solo for:

1
2
3
4
5
for(int l = entre; l <= hasta; l++)
{
    comboBox1.Items.Add(meses[l-1]);
 
}


y llenas el combo.


3. en el evento del leave o valuechange de fecha final mandas a llamarlo.
con algunas condiciones que tiene que cumplirse ejemplo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
//Validar que fecha final sea mayor a fecha inicial
if (fechafin.Value < fechaini.Value) { MessageBox.Show("Fecha final no puede ser menor o igual que fecha inicial"); return; }
//Limpiar el combobox 
comboBox1.Items.Clear();
// Condicionar si estas en el mismo año
 
if (fechafin.Value.Year - fechaini.Value.Year == 0)
{
    llenarcombo(fechaini.Value.Month, fechafin.Value.Month);
}else
{
    if (Math.Abs(fechaini.Value.Month - 12) + fechafin.Value.Month  > 11)
    {
        llenarcombo(fechaini.Value.Month, 12);
        llenarcombo(1, fechaini.Value.Month-1);
    }
    else
    {
        llenarcombo(fechaini.Value.Month, 12);
        llenarcombo(1, fechafin.Value.Month);
    }
}


Espero te ayude la idea, saludos puedes visitar mi canal en youtube:

https://www.youtube.com/user/MiltonIzaguirreMoral

ahi tengo tutoriales de C# 2015.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de milton
Val: 43
Ha aumentado 1 puesto en C sharp (en relación al último mes)
Gráfica de C sharp

Extraer meses de un datetimepicker

Publicado por milton (14 intervenciones) el 15/11/2018 16:08:06
Saludos Roger

Solución 2:

En este video explico 2 soluciones de resolverlo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 19
Ha aumentado su posición en 3 puestos en C sharp (en relación al último mes)
Gráfica de C sharp

Extraer meses de un datetimepicker

Publicado por roger (9 intervenciones) el 15/11/2018 18:24:34
Muchas Gracias Milton por apoyar,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar