Really you probably want to do this when the Active Step changes under any circumstances.
Add a handler for OnActiveStepChanged in your .aspx page:
<asp:Wizard ID="NewWizard" runat="server" ActiveStepIndex="0" OnActiveStepChanged="Wizard_OnActiveStepChanged">
<WizardSteps>
...
</WizardSteps>
</asp:Wizard>
Then, implement your handler:
protected void Wizard_OnActiveStepChanged(object sender, EventArgs e)
{
Request.QueryString.Set("Step",Convert.ToString(NewWizard.ActiveStepIndex));
}
This should work, however I haven't tested this code so I cannot make any kind of guarantee that it will work.