Pruebe esto (ACTUALIZADO PARA MOSTRAR código ASPX y VB con un par de valores estáticos para la prueba)
código aspx
<asp:TextBox ID="txtsurcharges" runat="server" Text="£5" AutoPostBack="true"></asp:TextBox>
<asp:TextBox ID="txttotal" runat="server" Text="£5"></asp:TextBox>
código vb
Private Sub txtsurcharges_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtsurcharges.TextChanged
Dim c As Integer
c = CInt(txtsurcharges.Text) + CInt(txttotal.Text)
txttotal.Text = c
End Sub
Como puede ver, estaba configurando c a =la suma del recargo y el total y luego estaba restableciendo c de nuevo al total.
Si ahora cambio txtsurcharges a 10, txttotal cambiará a 15.
Por supuesto, deberá asegurarse de que solo se puedan escribir números en txtsurcharges.