@André van Haren that's a great idea, Edwin, thanks!
@Beatrix W actually pointed out the same solution.
And as she mentioned, you should encapsulate the questions. This kind of means that you store your questions in some kind of array (or database), along with the answers.
Every time you present a question page, you just show some kind of template and populate it with the question in your array.
An array could be an array of Classes. You simply create a new class, add properties. You can then store instances of these classes in an Array.
This way you can make your questionnaire dynamic. Maybe you don't need it, maybe you will. But it helps you out a lot by not making the same page over and over again. You just make one layout, and populate it with the dynamic parts. Whenever you have a bug, you only have to change one page, instead of all the pages across your project.
You might want to take a look at this webinar by @Paul L : LINK
Next, you can use the page panels to make your layout. In the first panel could be empty, in case no item in your sourcelist is selected.
The second page you can fill with a Label control, that will display the question. It will also display either a TextField control or several Radio Buttons the user can use to enter the questions.
The third page might contain a layout for the Character Sketches.
A fourth page can contain controls for your Theme item.
Another webinar you might want to have a look at a Container Control webinar: LINK .
It might help you in your project. And actually, I recommend you to watch all Paul's webinars. It's a better show than "Goede tijden, slechte tijden". Hahaha!