2014-09-03 23 views
1

我想過濾一個基於文本框的文本框中的文本框中的文本框中的文本框中的一個弧形網格,例如當用戶在文本框中輸入B網格時應該過濾一列說員工名稱從B開始。我嘗試了一些跟隨。 我的C#代碼在文本框中過濾Rad網格TextChanged

protected void txtSearchName_TextChanged(object sender, EventArgs e) 
     { 
      DataTable dtUserDetails = new DataTable();   
       DataView dvStores = new DataView(dtEmployeeDetail); 
       dvStores.RowFilter = "EmployeeName LIKE '" + txtSearchName.Text + "%'"; 
       rgEmployeeDetail.DataSource = dvStores;         
     } 

這裏dtEmployeeDetail被包含在ASP頁面EmployeeName列

我的文本框和網格中的所有數據表如下

<telerik:RadTextBox ID="txtSearchName" runat="server" DisplayText="Search" AutoPostBack="true" OnTextChanged="txtSearchName_TextChanged"> 
             </telerik:RadTextBox> 
Grid 

<telerik:RadGrid ID="rgEmployeeDetail" runat="server" AllowPaging="true" ShowGroupPanel="false" 
            AutoGenerateColumns="false" PageSize="20" EnableAriaSupport="true" OnItemCommand="rgEmployeeDetail_ItemCommand" 
            OnNeedDataSource="rgEmployeeDetail_NeedDataSource" OnInit="rgEmployeeDetail_Init">         
            <MasterTableView Width="100%" TableLayout="Fixed"> 
             <PagerStyle AlwaysVisible="true" ShowPagerText="False" PageSizeLabelText="" Mode="NextPrevAndNumeric" /> 
             <Columns> 
              <telerik:GridBoundColumn DataField="ID" HeaderText="ID" Visible="false"> 
               <HeaderStyle Width="25%" /> 
              </telerik:GridBoundColumn> 
              <telerik:GridBoundColumn DataField="UserID" HeaderText="Global Id"> 
               <HeaderStyle Width="25%" /> 
              </telerik:GridBoundColumn> 
              <telerik:GridBoundColumn DataField="EmployeeName" HeaderText="Employee Name"> 
               <HeaderStyle Width="50%" /> 
              </telerik:GridBoundColumn> 
              <telerik:GridBoundColumn DataField="Extension Number" HeaderText="Extension Number"> 
               <HeaderStyle Width="25%" /> 
              </telerik:GridBoundColumn> 
             </Columns> 

             <EditFormSettings> 
              <EditColumn FilterControlAltText="Filter EditCommandColumn column"> 
              </EditColumn> 
             </EditFormSettings> 
            </MasterTableView> 
            <ClientSettings AllowKeyboardNavigation="true"> 
             <Selecting AllowRowSelect="true" EnableDragToSelectRows="true" /> 
            </ClientSettings> 
            <PagerStyle PageSizeLabelText="" ShowPagerText="False" /> 
            <FilterMenu EnableImageSprites="False"> 
            </FilterMenu> 
           </telerik:RadGrid> 

,但它不工作網格沒有按照新的數據視圖進行過濾。

回答

0

請檢查...您是否缺少在以下行後面調用rgEmployeeDetail.DataBind() rgEmployeeDetail.DataSource = dvStores;

如果不解決..請EnableLinqExpressions =在弧度電網虛假和檢查

+0

我試過了也,但沒有結果。這給出了異常沒有屬性或字段'EmployeeName'存在於類型'DataRowView' – Fazil 2014-09-03 13:14:21

+0

這意味着dtEmployeeDetail表具有不同的名稱,其他'EmployeeName'請再次檢查列名稱,並使用它在你的RowFilter – 2014-09-03 13:23:08

+0

它返回的數據視圖有與我綁定到網格的數據表完全相同的列。數據視圖列中沒有問題。 – Fazil 2014-09-03 13:28:42