sumar valores en listbox multicolumn foxpro
Las operaciones se hacen con datos, no con la interfaz.
Debes preguntarte cual es la fuente de tu listbox y resolver el problema utilizando los datos de la fuente.
Esto se programa, normalmente, en métodos separados que pueden ser llamados por eventos del Listbox.
Si la fuente del listbox es un cursor, resuelve tus operaciones con los datos del cursor y luego haces un .Requery para el listbox.
Lo mismo si la fuente es un array. Si además tienes asignado un ControlSource, deberás agregar un Refresh después de Requery.
Si el ControlSource se asigna a una propiedad del formulario, debes actualizar el valor de la propiedad (si es que se ve afectado), antes de efectuar el Refresh.
Si tu listbox es RowSourceType = 0 (agregas los datos por AddListitem ), una vez resuelta la operación necesitas recrear el listbox.
Si los datos son muchos y el Listbox se torna pesado, llegó la hora de preguntarte por qué un Listbox donde deberías usar un Grid.