Following code in Form_Load is used to do this:
Dim lstDocs As New System.Collections.Generic.List(Of String)
' 1. header
lstDocs.Add("*Title*" + vbTab + "*Source*" + vbTab + "*Type*" + vbTab + "*Receive*" + vbTab + "*Expire*")
' 2. list all templates
Dim template As EllieMae.Encompass.BusinessObjects.Loans.Templates.DocumentTemplate
For Each template In Loan.Session.Loans.Templates.Documents
Dim sOneDoc As String = "[" + template.Title + "]" + vbTab + _
"[" + template.Source + "]" + vbTab + _
"[" + template.Type.ToString() + "]" + vbTab + _
template.DaysToReceive.ToString() + vbTab + _
template.DaysToExpire.ToString()
lstDocs.Add(sOneDoc)
Next
' 3. sort
lstDocs.Sort()
' 4. show
txtDocs.Text = String.Join(vbCRLF, lstDocs.ToArray())