Code tells:
1, you controls every char of output:

Property="DisplayName" LinkTo="Profile" unrecognized="true">







outputs:

<a href="http://getben.com/user/Profile.aspx?UserID=2108">Ben Tiedt</a>. So there!</h2>
2, data on demand


















3, implicit, contextual data binding

















quote:
4, build forms your way:
- A UserData control rendered within a SectionList control would display data related to the first owner user of each Section (if at least one owner exists for the section; similarly, a UserList control would list all owners of the Section)
- A UserData control rendered within a PostList control would display data related to the author of each post

EmailTextBoxId="Email" MessageTextBoxId="Body" SubmitButtonId="Submit">







<CSControl:FormLabel LabelForId="Name" runat="server" ResourceName="Weblog_ContactForm_Name" />
</div>


<CSControl:FormLabel LabelForId="Email" runat="server" ResourceName="Weblog_ContactForm_Email" />
</div>


<CSControl:FormLabel LabelForId="Subject" runat="server" ResourceName="Weblog_ContactForm_Subject" />
</div>


<CSControl:FormLabel LabelForId="Body" runat="server" ResourceName="Weblog_ContactForm_Body" />
</div>




ResourceName="Weblog_ContactForm_Sent" Visible="false" />



5, conditional view:



ComparisonValue="0" Operator="GreaterThan" />





ComparisonValue="0" Operator="LessThanOrEqualTo" />



6, act as you want:



