Присвоение источника данных региону - PullRequest
0 голосов
/ 20 февраля 2009

Мне было интересно, существует ли существующий элемент управления, который я мог бы использовать для достижения того, что я пытаюсь.

По сути, у меня есть 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();
}

Есть ли что-нибудь для этого? Я хочу иметь возможность контролировать расположение полей в контейнере.

Спасибо.

Ответы [ 3 ]

1 голос
/ 05 апреля 2009

На самом деле то, что я преследовал, было элементом управления 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 за ваш вклад. Повторитель также подходит, но для связывания «a» записи, я думаю, FormView идеально подходит. Спасибо.

0 голосов
/ 20 февраля 2009

для 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 голосов
/ 20 февраля 2009

Используйте элемент управления GridView. Вы можете присоединить классы CSS ко многим свойствам в режиме «Дизайн» для управления макетом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...