If you have Silverlight version 3, you cannot. You have to custom write the objects or render them as bitmap's I guess.
In Silverlight version 4, the PrintDocument class was introduced. Well, I hope you have not scoured the holy internet yet for any articles. David Poll had this article titled "Making printing easier in Silverlight 4" on his blog much much earlier. Here is the link from my bookmarks - http://www.davidpoll.com/2010/04/16/making-printing-easier-in-silverlight-4/
In short, you need to create a print document, give it a name. Associate the PrintPage handler and in the handler , add the elements to the pageRoot children. And then call the print method.
var pd = new PrintDocument();
pd.DocumentName = "custom print";
pd.PrintPage += pd_PrintPage;
private void pd_PrintPage(object sender, PrintPageEventArgs e)
var pageRoot = new Canvas();
e.PageVisual = pageRoot;
Hope it helps.