بخش هشتم
AlternatingItemTemplate: اگه دوست دارید که سطور (Itemها) در ListView یک در میان با هم فرقی داشته باشند میتونید از این Template استفاده کنید. به طور مثال میخواهیم مثالی رو باهم بنویسیم که در اون یک در میان رنگ سطرها باهم فرق کنه.

مثال: (این مثال در صفحه AlternatingItemTemplate – 08 قرار دارد)

کنترل sqlDataSource رو به صفحه اضافه کنید و طوری اونو کانفیگ کنید تا 10 رکورد رو بازیابی کنه==>
کد HTML:
<asp:SqlDataSource
ID="sqlAlternatingItem"
runat="server"
ConnectionString="<%$ ConnectionStrings:ConnectionString %>" 
      SelectCommand="SELECT * FROM [01_DataPager] WHERE ([ID] &lt;= @ID)"
> 
      <SelectParameters>
            <asp:Parameter
DefaultValue="10"
Name="ID"
Type="Int32"
/>
</SelectParameters>
</asp:SqlDataSource>

کنترل ListView رو به صفحه اضافه کرده و خصوصیت DataSourceID اونو برابر با نام کنترل sqlDataSource یعنی sqlAlternatingItem قرار بدید.
من در استایل شیت خودم دو کلاس تعریف کردم که در این دو کلاس background-colorباهم فرق می کنه.

در ItemTemplate یک tr دارم که td ها داخلش قرار می گیرند و Item ها رو داخلش نشون می ده.در AlternatingItemTemplate هم همین کدها رو می نویسم؛ با این تفاوت که خصوصیت class دو tr با هم فرق می کنه و با این روش رنگ پس زمینه یکی در میان در ListView باهم فرق خواهد نمود.

کلاس های استایل==>
کد HTML:
.item
{
      background-color: #FFCCFF;
}
.alternate
{
      background-color: #FFCC66;
}

و کدهای ListView==>

کد HTML:
<asp:ListView
ID="ListView"
runat="server"
DataSourceID="sqlAlternatingItem"
> 
<LayoutTemplate>
      <table
style="text-align: center; background-color: White; width: 400px; border: solid 1px black;"
                  cellpadding="0" cellspacing="0" id="tblItems">
                  <tr>
                        <th
style="color: White; background-color: #006699;"
>                                               ID
                        </th>
                        <th
style="color: White; background-color: #006699;"
> 
                              Item
                        </th>
                  </tr>
                  <tr
runat="server" id="itemPlaceholder"
> 
                  </tr>
            </table>
      </LayoutTemplate>
      <ItemTemplate>
            <tr class="item" id="Tr1" runat="server">
                  <td>
                        <%# Eval("ID") %>
                  </td>
                  <td>
                        <%# Eval("Item") %>
                  </td>
            </tr>
      </ItemTemplate>
      <AlternatingItemTemplate>
            <tr class="alternate" id="Tr1" runat="server">
                  <td>
                        <%# Eval("ID") %>
                  </td>
                  <td>
                        <%# Eval("Item") %>
                  </td>
            </tr>
      </AlternatingItemTemplate>
</asp:ListView>

صفحه رو Run کنید و نتیجه رو مشاهده نماید==>





ادامه دارد==>