Вы можете попробовать зацикливаться на коллекции Controls
страницы и, если найдете текстовое поле, добавить его значение в тело письма:
var body = new StringBuilder();
foreach (var control in pageInstance.Controls)
{
if (control is TextBox)
{
var value = ((TextBox)control).Text;
body.AppendFormat("value: {0}<br/>", HttpUtility.HtmlEncode(value));
}
}
message.Body = body.ToString();
Примечание: Это будет работать, только если текстовые поля размещены непосредственно на странице, а не внутри некоторых других контейнеров, таких как панели, ... Чтобы учесть это, вы могли бы написать рекурсивную функцию который посещает все элементы управления.