Как обновить сетку после его фильтрации (динамический) с помощью LinqDataSource? - PullRequest
0 голосов
/ 29 июля 2010
<asp:GridView ID="GridView2" runat="server" AllowPaging="True"  
    AllowSorting="True" AutoGenerateColumns="False" DataSourceID="LinqDataSource1"> 
    <Columns> 
        <asp:BoundField DataField="UserName" HeaderText="User Name" ReadOnly="True"  
            SortExpression="UserName" /> 
        <asp:BoundField DataField="FullName" HeaderText="Full Name" ReadOnly="True"  
            SortExpression="FullName" /> 
        <asp:BoundField DataField="Email" HeaderText="Email" ReadOnly="True"  
            SortExpression="Email" /> 
       <asp:BoundField DataField="LastLoginDate" HeaderText="Last Login" ReadOnly="True"  
            SortExpression="LastLoginDate" DataFormatString="{0:dd MMMM yyyy}"/> 
       <asp:HyperLinkField Text="Edit" DataNavigateUrlFields="UserId" DataNavigateUrlFormatString="~/Pages/UsersMaintenance/CreateEditUser.aspx?UserId={0}" /> 
    </Columns> 
</asp:GridView> 

<asp:LinqDataSource ID="LinqDataSource1" runat="server" ContextTypeName="MyDataContextDataContext" onselecting="LinqDataSource_Selecting">  
        <WhereParameters>  
           <asp:Parameter Name="Subject" /> 
        </WhereParameters>  
</asp:LinqDataSource> 

 public void LinqDataSource1_Selecting(object sender, LinqDataSourceSelectEventArgs e)
        {
                this.LinqDataSource1.WhereParameters["Subject"].DefaultValue =  this.txtSubject.Text;
               e.Result = reporterRepo.GetInquiries(); 

Ответы [ 2 ]

0 голосов
/ 03 августа 2010

мой gridview был в панели обновления, поэтому он не обновлял gridview

 <asp:UpdatePanel....  
0 голосов
/ 29 июля 2010

Попробуйте использовать это или измените его, пока оно не заработает. Если я прав, я делал что-то подобное раньше:

public void LinqDataSource1_Selecting(object sender, LinqDataSourceSelectEventArgs e)
{
   this.LinqDataSource1.WhereParameters["Subject"].DefaultValue =  this.txtSubject.Text;
   GridView2.DataBind();
   e.Cancel = true;
}
...