2009-02-20 60 views
0

我想知道是否有一個現有的控件可以用來實現我正在嘗試的操作。將數據源分配給區域

基本上,我有一個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(); 
} 

有沒有什麼可以做到這一點?我希望能夠控制容器內的字段佈局。

謝謝。

回答

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是理想的我想。謝謝。

0

使用GridView控件。您可以在設計模式下將CSS類附加到多個屬性,以控制佈局。

+0

對不起,我可能不應該使用表格作爲例子。清除佈局可能非常適合流佈局,隨意,任何事情。 我只想要一個區域被一個數據源包含,我可以使用evals來綁定我認爲合適的字段。希望我的問題越來越清晰。謝謝。 – minalg 2009-02-20 05:27:35

0

的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基礎。

+0

這不完全是我以後的事情,但它確實是我需要的大部分。謝謝。 – minalg 2009-02-27 22:08:07