mabe make an alias of it, then call the alias everytime click in the dialog? then u can use the same alias on init to, maybe less work for you? i made it that way in some of my dialogs, dont know if it's any bether way to do it.

alias load.click {
if (%bla == on) { did -c $dname 1 }
if (%test == on) { did -c $dname 2 }
if (%try == on) { did -c $dname 3 }
}

on 1:dialog:popusn:sclick:14:{
if $did(14).state == 1 { set %Relay2 on | load.click }
if $did(14).state == 0 { set %Relay2 off | load.click }
}