Pragya Nagwanshi Ответов: 1

Как показать поле шаблона и текст заголовка как в ASP.NET gridview


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

Что я уже пробовал:

 <asp:GridView ID="GridViewemp" runat="server" AllowPaging="True" class="gv"

            AllowSorting="True" onpageindexchanging="GridViewemp_PageIndexChanging" 

            BorderColor="#3399FF" BorderStyle="Groove" 

            CellPadding="1" CellSpacing="1"

            onsorting="GridViewemp_Sorting" PageSize="5" AutoGenerateColumns="False" 

            Height="10px" onselectedindexchanged="GridViewemp_SelectedIndexChanged">
            <Columns>
             <asp:TemplateField HeaderText="E_Id ●" ControlStyle-Font-Names="Arial" SortExpression="eid" >
            <ItemTemplate>
           <asp:Label ID="lblid" runat="server" Text='<%#Eval("eid")%>'/>
           </ItemTemplate>
<ControlStyle Font-Names="Arial"></ControlStyle>
          </asp:TemplateField>
          <asp:TemplateField HeaderText="E_Name ●" SortExpression="ename" ShowHeader="true" >
            <HeaderTemplate>
            <table>
          <tr><td></td></tr>
          <tr><td> <cc1:ComboBox ID="ComboBoxname" runat="server" AutoCompleteMode="SuggestAppend" DropDownStyle="Simple" Width="50px">
              </cc1:ComboBox></td>
          </tr>
          </table>
            </HeaderTemplate>

            <ItemTemplate>
           <asp:Label ID="lblname" runat="server" Text='<%#Eval("ename")%>' />
           </ItemTemplate>
          </asp:TemplateField>
          <                                                <asp:TemplateField HeaderText="E_Group ●" SortExpression="egrp">
           <ItemTemplate>
           <asp:Label ID="lblgrp" runat="server" Text='<%#Eval("egrp")%>'/>
           </ItemTemplate>
          </asp:TemplateField>
          				
</Columns>
            <HeaderStyle Font-Names="Times New Roman" Font-Size="Small" 

                ForeColor="Black" CssClass="header" Wrap="False" />
        </asp:GridView>

1 Ответов

Рейтинг:
8

Suvendu Shekhar Giri

Во-первых, вам нужно понять, что такое HeaderTemplate is. Проверьте ссылку ниже-

Цитата:
Свойство HeaderTemplate используется для указания пользовательского содержимого, отображаемого для раздела заголовка объекта TemplateField. Определите содержимое, создав шаблон, который определяет способ отображения раздела заголовка.

Шаблон.Свойство HeaderTemplate (System .Web. UI.WebControls)[^]

Вы также определили HeaderText в поле шаблон-
HeaderText="E_Name ●"

Это не возможно, чтобы показать содержимое HeaderTemplate и HeaderText в то же время.

Итак, что вы можете сделать, так это изменить HeaderTemplate соответственно для размещения HeaderText Что-то вроде-
<headertemplate>
<table>
      <tr><td>E_Name ●</td></tr>


Надеюсь, это поможет :)


Pragya Nagwanshi

и как я буду выполнять сортировку на основе выражения сортировки

Pragya Nagwanshi

Фактически на основе выражения сортировки я динамически изменяю текст заголовка.Итак, как я смогу изменить текст заголовка или отразить значение столбца шаблона заголовка