Foros del Web » Programando para Internet » ASPX (.net) »

Filtro en un Gridview

Estas en el tema de Filtro en un Gridview en el foro de ASPX (.net) en Foros del Web. Hola a todos!!!! Yo molestando de nuevo jaja. Bueno mi surgio otro problema. Estoy llenando un Gridview con un SqlDataSource. Lo que necesito es filtrar ...
  #1 (permalink)  
Antiguo 02/07/2008, 09:16
 
Fecha de Ingreso: junio-2008
Mensajes: 5
Antigüedad: 15 años, 10 meses
Puntos: 0
Pregunta Filtro en un Gridview

Hola a todos!!!! Yo molestando de nuevo jaja. Bueno mi surgio otro problema. Estoy llenando un Gridview con un SqlDataSource. Lo que necesito es filtrar por Codigo o por Descripcion. He buscado como hacerlo y creo que esta es la forma correcta pero no me refresca el filtrado por ninguno de los dos parametros.

Grid y SqlDataSource:

<asp:TextBox ID="txtFiltroCod" runat="server"></asp:TextBox>
<asp:TextBox ID="txtFiltroDescripcion" runat="server" visible="True"></asp:TextBox>
<asp:Button ID="btnFiltrar"
runat="server" OnClick="btnFiltrar_Click" Text="Filtrar" />


<asp:GridView ID="todo_articulos" runat="server" AllowPaging="True" OnPageIndexChanging="todo_articulos_PageIndexChang ing" AutoGenerateColumns="False" DataKeyNames="COD" DataSourceID="sqlDS" OnDataBound="todo_articulos_DataBound" EnableViewState="False" Width="450px">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox id="check_articulo" runat="server" AutoPostBack="true" OnCheckedChanged="check_articulo_CheckedChanged" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="COD" HeaderText="COD" ReadOnly="True" SortExpression="COD" />
<asp:BoundField DataField="ARTICULO" HeaderText="ARTICULO" SortExpression="ARTICULO" />
<asp:BoundField DataField="PRECIO" HeaderText="PRECIO" SortExpression="PRECIO" />
<asp:BoundField DataField="METROS" HeaderText="METROS" SortExpression="METROS" />
<asp:TemplateField HeaderText="CANT">
<ItemTemplate>
<asp:TextBox ID="txtCant" runat="server" Width="35">

</asp:TextBox><asp:RequiredFieldValidator ID="validador_cant" runat="server" ControlToValidate="txtCant" ErrorMessage="*">
</asp:RequiredFieldValidator>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="sqlDS" DataSourceMode="DataSet" runat="server" EnableCaching="True" CacheDuration="60" ConnectionString="<%$ ConnectionStrings:GP_WEBConnectionString %>" SelectCommand="SELECT COD_ARTICU AS COD, DESCRIPCIO AS ARTICULO, precio as PRECIO, metros as METROS FROM AO ORDER BY DESCRIPCIO" FilterExpression="COD='{0}' OR ARTICULO LIKE '%{1}%'">
<FilterParameters>
<asp:ControlParameter Name="filtroCod" ControlID="txtFiltroCod" PropertyName="Text" />
<asp:ControlParameter Name="filtroDesc" ControlID="txtFiltroDescripcion" PropertyName="Text" />
</FilterParameters>
</asp:SqlDataSource>


PD: Cuando utilizo un solo ControlParameter el filtrado lo hace correctamente. Gracias por su tiempo.
  #2 (permalink)  
Antiguo 04/07/2008, 03:18
 
Fecha de Ingreso: marzo-2008
Mensajes: 65
Antigüedad: 16 años
Puntos: 0
Respuesta: Filtro en un Gridview

hola, puedes mandar el codebehind tambien? para ver todo el programa.
  #3 (permalink)  
Antiguo 04/07/2008, 07:04
 
Fecha de Ingreso: junio-2008
Mensajes: 5
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Filtro en un Gridview

Este el codigo asociado al HTML:

Protected Sub rbCod_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs)
If Me.rbCod.Checked = True Then
Me.txtFiltroCod.Visible = True
txtFiltroDescripcion.Text = ""
Me.txtFiltroDescripcion.Visible = False
Me.rbDescripcion.Checked = False
End If
End Sub

Protected Sub rbDescripcion_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs)
If Me.rbDescripcion.Checked = True Then
txtFiltroCod.Text = ""
Me.txtFiltroCod.Visible = False
Me.txtFiltroDescripcion.Visible = True
Me.rbCod.Checked = False
End If
End Sub

Protected Sub sqlDS_Filtering(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.SqlDataSourceFilteringEv entArgs)
Me.sqlDS.DataBind()
End Sub

Protected Sub todo_articulos_DataBound(ByVal sender As Object, ByVal e As System.EventArgs)
ocultar_columna()
End Sub

Private Sub ocultar_columna()
'Ocultar columna de Cantidad en Grid de Todos los Articulos
Me.todo_articulos.HeaderRow.Cells(5).Visible = False
Dim column As GridViewRow
For Each column In Me.todo_articulos.Rows
column.Cells(5).Visible = False
Next
End Sub

Protected Sub todo_articulos_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs)
todo_articulos.PageIndex = e.NewPageIndex
Me.panel_pop.Visible = True
End Sub
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:43.