DialogProlog is an option for Dialog which can give an expression to evaluate before the dialog starts.
You must use a delayed rule of the form DialogProlog
:>
expr to prevent expr from evaluating prematurely.
Expressions given by DialogProlog are evaluated after symbol values are localized, and before any expression given as the argument of Dialog is evaluated.