我想知道是否有一个现有的控件可以用来实现我的目标。
基本上,我有一个html表,显示我的标题信息。
它看起来像这样:
<table class="tableEdit">
<tr>
<th>Job ID</th><td>10</td>
<th>Client</th><td>Tom</td>
</tr>
<tr>
<th>Comments</th><td>Comments are here</td>
</tr>
</table>
我想知道是否存在可用作容器的现有控件。然后我可以将数据源分配给该控件 并利用这些字段值。
<asp:Somecontrol runat="server" ID="someid">
<table class="tableEdit">
<tr>
<th>Job ID</th><td><%# Eval("Id") %></td>
<th>Client</th><td><%# Eval("Client.Name") %></td>
</tr>
<tr>
<th>Comments</th><td><%# Eval("Comments") %></td>
</tr>
</table>
</asp:Somecontrol>
private void BindHeader()
{
SomeObjectType data = DAL.SomeMethod();
someid.Datasource = data;
someid.DataBind();
}
有什么可以做的吗?我希望能够控制容器中字段的布局。
感谢。
答案 0 :(得分:1)
实际上我所追求的是FormView控件。
我之前从未使用过此控件,但这是我想要做的确切控制。
它允许标记区域,分配数据源并根据需要绑定项目。
<asp:FormView ID="FormView1" runat="server" DataSourceID="ObjectDataSource2" Visible="false">
<ItemTemplate>
<table style="border-collapse: collapse;" class="tableEdit">
<tr>
<td>ClientId</td>
<td><asp:Label ID="ClientId" runat="server" Text='<%# Eval("ClientId") %>' /></td>
</tr>
<tr>
<td>ClientCode</td>
<td><asp:TextBox ID="TextBox1" runat="server" Text='<%# Eval("ClientCode") %>' /></td>
</tr>
<tr>
<td>Name</td>
<td><asp:TextBox ID="TextBox2" runat="server" Text='<%# Eval("Name") %>' /></td>
</tr>
<tr>
<td>BillingContactName</td>
<td><asp:TextBox ID="TextBox3" runat="server" Text='<%# Eval("BillingContactName") %>' /></td>
</tr>
感谢AI W的输入。 Repeater也适用于绑定“a”记录,FormView是我认为的理想选择。感谢。
答案 1 :(得分:0)
使用GridView控件。您可以在设计模式下将CSS类附加到许多属性以控制布局。
答案 2 :(得分:0)
for asp.net 2.0
<asp:Repeater runat="server" id="someid">
<ItemTemplate>
<table class="tableEdit">
<tr>
<th>Job ID</th><td><%# Eval("Id") %></td>
<th>Client</th><td><%# Eval("Client.Name") %></td>
</tr>
<tr>
<th>Comments</th><td><%# Eval("Comments") %></td>
</tr>
</table>
</ItemTemplate>
</asp:Repeater>
你可以在asp.net 3.5中使用该控件,但我不会尝试使用该语法,因为我不会每天使用3.5。