no es necesario hacer miles de cálculos y funciones solo es adaptar un poquito el code de los métodos que nos ofrece el framework
Podría quedar así:
Código:
private string SumarHoras(string h1, string h2) {
string[] arrHour1 = h1.Split(new char[] { ':' }); //23:45
string[] arrHour2 = h2.Split(new char[] { ':' }); //3:30
DateTime d1 = new DateTime(1900, 1, 1, Int32.Parse(arrHour1[0]), Int32.Parse(arrHour1[1]), 0);
d1 = d1.AddHours(Int32.Parse(arrHour2[0]));
d1 = d1.AddMinutes(Int32.Parse(arrHour2[1]));
return d1.ToShortTimeString();
}
y para llamarlo
Cita: Label1.Text = "La hora fin es " + SumarHoras("23:45", "03:30");
y listo.. me regresa 3:15
p.d. No es bueno usar Variant (eso era para vb6 que aún así tenía su costo)
Espero te sirva.
Salu2