Я не уверен, поможет ли это, но на всякий случай. Чтобы создать кнопки с использованием шаблона элемента управления в коде позади (не XAML), я сделал это так:
загрузить шаблон элемента управления из определения xml (ниже ссылка на источник)
byte[] bytes = ReadBytesFromStream("BestBuyRemix.BL.buttontemplate.xml");
string buttonTemplate = "";
UTF8Encoding encoding = new UTF8Encoding();
buttonTemplate = encoding.GetString(bytes.ToArray(), 0, (int)bytes.Length);
создайте кнопку и добавьте ее в визуальное дерево (в данном случае панель переноса)
string onebutton = string.Format (buttonTemplate, mnu.CatItemName, mnu.CatItemImage,
"{StaticResource buttonStyle1}",
"{StaticResource CatItemNameBlock}", "{StaticResource ThumbNailPreview}",
ictr.ToString ());
ictr + = 1;
Button bt = (Button)XamlReader.Load(onebutton);
bt.Tag = mnu.CatItemPageUri;
bt.Click += new RoutedEventHandler(bt_Click);
Wrappable.Children.Add(bt);
Я написал в своем блоге сообщение об API Best Buy Remix, в котором он используется для создания списка продуктов на странице сведений. Он имеет ссылку на источник Silverlight. На случай, если вам интересно.
ссылка на пост в блоге