title: Setting text of controls on form dynamically
body: <p>I have a WinForms app that I am currently implementing a translation engine in. What I have so far is a bunch of text documents that follow the syntax like:</p>
  
  <pre><code>messages.manualupdate="There is a manual update available for ProgName.\n\nDo you want to update to version {0}.{1}.{2}{3}?"
  messages.errorcopy="Clicking OK will copy the error so you can paste it elsewhere!"
  messages.error="Error"
  messages.notsupported.title="Unsupported client"
  messages.notsupported.message="This version is no long supported. Please wait for an update."
  </code></pre>
  
  <p>I have lots of these for different languages, for example:</p>
  
  <pre><code>messages.manualupdate="é disponibile un'aggiornamento manuale del programma ProgName.\n\nVuoi aggiornare alla versione {0}.{1}.{2}{3}?"
  messages.errorcopy="Cliccando OK eseguirete una copia degli errori visualizzati"
  messages.error="Error"
  messages.notsupported.title="Client non supportato"
  messages.notsupported.message="Questa versione non è utilizzabile al momento. attendi il prossimo aggiornamento!"
  </code></pre>
  
  <p>I then parse this into a <code>DynamicObject</code> which I can access like <code>language.messages.notsupported.error</code>. What I would like to know is if I can somehow link all the controls on the form to use variables from the dynamic object on creation. For instance I have a button on my form that I want to have the text "Error" in. Before the form shows, I set the <code>language</code> variable to the users chosen language, and then when the form shows it simply loads the text from <code>language</code>. Is there a way to do this in the designer rather than having to write a method that is called in the Forms constructor as it seems to me like a little bit of a waste to set all the button text to a value and then change them all when the form loads. I'm looking for a sort of binding, but to the controls Text parameter.</p>
  
  <p>Anyone have any ideas?</p>