Есть ли способ «выровнять» столбцы в элементе управления повторителем данных? - PullRequest
0 голосов
/ 19 сентября 2008

Есть ли способ "выровнять" столбцы в элементе управления повторителем данных?

I.E в настоящее время это выглядит так:

user1 - colA colB colC colD colE
user2 - colD colE

Я хочу, чтобы это выглядело так:

  user1
   -colA
   -colB
   -colC
   -colD
   -colE


   user1



   -colD
   -colE

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

Требования требуют использования повторителя, а не элемента управления сеткой.

Есть идеи?

Ответы [ 3 ]

2 голосов
/ 19 сентября 2008

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

<td colspan='<%# MissingCount(Contatiner.DataItem) %>'>
1 голос
/ 19 сентября 2008

Я бы предложил вместо использования <td> для определения столбцов использовать вместо этого CSS.

.collink {
  width: 20px; 
  float: left; 
  height: 20px;
}

И

<td style="padding :0px 0px 0px 0px;">
    <div class="collink">
        <asp:LinkButton ID="lnkEdit" runat="server" ... />
    </div>
</td>

Этот подход позволяет контенту расти без фактического влияния на структуру таблицы.

0 голосов
/ 19 сентября 2008

    <tr class="RadGridItem">
        <td width="100">
            <asp:Label ID="lblFullName" runat="server" 
                Text ='<%# DataBinder.Eval(Container.DataItem, "FullName") %>'
                ToolTip='<%# "Current Grade: " + DataBinder.Eval(Container.DataItem,"CurrentGrade") + "%" +
                             " Percent Complete: " + DataBinder.Eval(Container.DataItem,"PercentComplete") + "%" %>' />
        </td>
        <asp:Repeater ID="rptAssessments" runat="server" DataSource='<%# DataBinder.Eval(Container.DataItem, "EnrollmentAssessments") %>'>
            <ItemTemplate>
              <td style="padding :0px 0px 0px 0px; width:20px; height: 20px;">
                    <asp:LinkButton ID="lnkEdit" runat="server"
                        OnClick="AssessmentClick" 
                        style=' <%# "color:" + this.GetAssessmentColor(Container.DataItem)  %>'
                        ToolTip='<%# DataBinder.Eval(Container.DataItem, "AssessmentName") + Environment.NewLine + 
                                        DataBinder.Eval(Container.DataItem, "EnrollmentAssessmentStateName") + "(" + 
                                        DataBinder.Eval(Container.DataItem, "PercentGradeDisplay") + "%) " + 
                                        GetPointsPossible(Container.DataItem) + " pts possible" %>'
                        CommandArgument='<%# DataBinder.Eval(Container.DataItem, "EnrollmentAssessmentID") %>'
                        Text='<%# this.GetAssessmentDisplay(Container.DataItem) %>' />
                </td>
            </ItemTemplate>
        </asp:Repeater>
    </tr>
</ItemTemplate>

Это код. Количество столбцов будет динамическим в зависимости от критериев, использованных для создания списка.

Спасибо.

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