none
dropdownlist not fired in header template

    Dotaz

  • Hello ,
    
    I want filter my technologies in depend on selectedvalue in dropdownlist, but indexchanged event is not raising, not fired
    
    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
        DataKeyNames="ID" DataSourceID="SqlDataSource1" AllowPaging="True" 
        AllowSorting="True" PageSize="20" ondatabound="GridView1_DataBound">
        <Columns>
          <asp:BoundField DataField="Od" HeaderText="Od" SortExpression="Od" 
            DataFormatString="{0:dd.MM.yyyy, HH:mm}" HtmlEncode="False" />
          <asp:BoundField DataField="Do" HeaderText="Do" SortExpression="Do" 
            DataFormatString="{0:dd.MM.yyyy, HH:mm}" HtmlEncode="False" />
          <asp:TemplateField HeaderText="Technologie" SortExpression="Technologie">
            <EditItemTemplate>
              <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Technologie") %>'></asp:TextBox>
            </EditItemTemplate>
            <HeaderTemplate>
              <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" 
                DataSourceID="SqlDataSource11" DataTextField="Popis" DataValueField="ID" 
                ondatabound="DropDownList1_DataBound" EnableViewState="False">
              </asp:DropDownList>
              <asp:SqlDataSource ID="SqlDataSource11" runat="server" 
                ConnectionString="<%$ ConnectionStrings:produkce %>" 
                SelectCommand="SELECT ID, Popis, Visible FROM Technologie WHERE (Visible = 1)">
              </asp:SqlDataSource>
            </HeaderTemplate>
            <ItemTemplate>
              <asp:Label ID="Label1" runat="server" Text='<%# Bind("Technologie") %>'></asp:Label>
            </ItemTemplate>
          </asp:TemplateField>
          <asp:BoundField DataField="Operace" HeaderText="Operace" 
            SortExpression="Operace" />
          <asp:BoundField DataField="Zařízení" HeaderText="Zařízení" 
            SortExpression="Zařízení" />
          <asp:BoundField DataField="Text" HeaderText="Text" SortExpression="Text" />
          <asp:BoundField DataField="Vytvořeno" HeaderText="Vytvořeno" 
            SortExpression="Vytvořeno" DataFormatString="{0:dd.MM.yyyy, HH:mm}" 
            HtmlEncode="False" />
          <asp:BoundField DataField="Autor" HeaderText="Autor" SortExpression="Autor" />
          <asp:BoundField DataField="ID" HeaderText="ID" InsertVisible="False" 
            ReadOnly="True" SortExpression="ID" Visible="False" />
        </Columns>
        <HeaderStyle ForeColor="White" />
        <AlternatingRowStyle CssClass="sedivy" />
      </asp:GridView>
      <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
        ConnectionString="<%$ ConnectionStrings:produkce %>"     
        SelectCommand="SELECT Záznamy.od AS Od, Záznamy.do AS Do, Technologie.Popis AS Technologie, Operace.Popis AS Operace, Všechna_zařízení.Jméno AS Zařízení, Záznamy.text AS Text, Záznamy.vytvořeno AS Vytvořeno, Záznamy.autor AS Autor, Záznamy.ID FROM Záznamy INNER JOIN Operace ON Záznamy.id_operace = Operace.ID INNER JOIN Technologie ON Operace.Technologie_ID = Technologie.ID INNER JOIN Všechna_zařízení ON Záznamy.id_zarizeni = Všechna_zařízení.ID ORDER BY Vytvořeno DESC">
      </asp:SqlDataSource>
    

     protected void DropDownList1_DataBound(object sender, EventArgs e)
        {
          DropDownList ddl = sender as DropDownList;
          ddl.Items.Insert(0, new ListItem("-- All items ---", "-1"));
        }
    

    středa 22. června 2011 8:27

Odpovědi

  • Nikde nevidím, že byste měl nastaven odběr události SelectedIndexChanged toho DropDownListu, ani že by SqlDataSource1 mělo nějakou vazbu na něj.
    Robert Haken, Microsoft MVP ASP/ASP.NET, HAVIT, s.r.o., www.havit.cz, http://knowledge-base.havit.cz
    sobota 9. července 2011 22:58
    Moderátor