According to the link provided by Vap0r, here is a more specific answer to the original question regarding dynamically generated buttons:
Button bt = new Button();
TextBlock tb = new TextBlock();
tb.Text = "Text to be wrapped";
tb.TextWrapping = TextWrapping.Wrap;
bt.Content = tb;
source
share