2017-04-24 18 views
0

我有下一个问题,当我只使用两列(一个用于名称和其他的复选框或一个用于名称和其他单选按钮)一切都很好,但是当我使用三列(一个名称,其他为复选框,最后为单选按钮)当我尝试在过滤器字段中写入时,控制台中出现了下一个错误。为什么我不能使用使用滤头的复选框和单选按钮列?

filterheader.js:46遗漏的类型错误:field.getValue不是一个函数

at g.<anonymous> (filterheader.js:46) 
at Object.each (ext-all.js:19) 
at g.runFiltering (filterheader.js:46) 
at g.onFieldChange (filterheader.js:45) 
at ext-all.js:19 

我不知道该怎么办,我没有在ext.net大量的练习。之前 为我的英文道歉。我真的很感谢一些帮助。

<ext:GridPanel ID="grdNames" runat="server" Title="Names" HideCollapseTool="false" UI="Primary" HideHeaders="false" Layout="FitLayout" ColumnLines="false" BodyStyle="GridFiltros" Border="false" Region="Center" Frame="false" ForceFit="true" AutoScroll="false" Resizable="false"> 
              <Store> 
               <ext:Store ID="strOrigen" runat="server"> 
                <Model> 
                 <ext:Model ID="Model25" runat="server"> 
                  <Fields> 
                   <ext:ModelField Name="CheckNames" Type="Boolean" DefaultValue="false" /> 
                   <ext:ModelField Name="Names" /> 
                 </Fields> 
                </ext:Model> 
              </Store> 
              <View> 
               <ext:GridView ID="GridView6" runat="server" TrackOver="true" StripeRows="true" /> 
              </View> 
              <ColumnModel ID="ColumnModel15" runat="server"> 
               <Columns> 
                <ext:ComponentColumn ID="radColumn" runat="server" Width="30" DataIndex="CheckNames" Align="Left"> 
                 <Component> 
                  <ext:Radio ID="rdGo" runat="server" Name="vGO"> 
                  </ext:Radio> 
                 </Component> 
                </ext:ComponentColumn> 
                <ext:CheckColumn ID="CheckColumn" runat="server" DataIndex="CheckNames" Sortable="false" HideTitleEl="true" Width="35" 
                 Resizable="false" StopSelection="false" Editable="true" Filterable="false" Align="Left" 
                 Groupable="false" MenuDisabled="true"> 
                 <Items> 
                  <ext:Checkbox runat="server" ID="chkRptGeoO" Checked="false"> 
                   <Listeners> 
                    <Change Fn="chkChangeRptGeoO"></Change> 
                   </Listeners> 
                  </ext:Checkbox> 
                 </Items> 
                </ext:CheckColumn> 
                <ext:Column ID="NamesColumn" runat="server" HideTitleEl="true" DataIndex="Names" MenuDisabled="true" Width="200" TabMenuHidden="true" /> 
               </Columns> 
              </ColumnModel> 
              <Plugins> 
               <ext:FilterHeader ID="grdNames" runat="server" OnCreateFilterableField="OnCreateFilterableField"> 
               </ext:FilterHeader> 
              </Plugins> 
    </ext:GridPanel> 

回答

0

我试图重现您的代码,但无法重现该问题。也许你需要升级你的Ext.NET版本?

检查这是否适用于您,我试图用您提供的代码片段复制您的场景,但也许我跳过了一些内容?

<%@ Page Language="C#" %> 

<!DOCTYPE html> 
<script runat="server"> 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     if (!X.IsAjaxRequest) 
     { 
      strOrigen.Data = new List<object>() 
      { 
       new { CheckNames = false, Names = "Name 1" }, 
       new { CheckNames = false, Names = "Name 2" }, 
       new { CheckNames = true, Names = "Name 3" }, 
       new { CheckNames = false, Names = "Name 4" } 
      }; 

      strOrigen.DataBind(); 
     } 
    } 
</script> 

<html> 
<head runat="server"> 
    <title></title> 
</head> 
<body> 
    <form runat="server" id="fm1"> 
     <div> 
      <ext:ResourceManager runat="server" /> 
      <ext:GridPanel ID="grdNames" runat="server" Title="Names"> 
       <Store> 
        <ext:Store ID="strOrigen" runat="server"> 
         <Model> 
          <ext:Model ID="Model25" runat="server"> 
           <Fields> 
            <ext:ModelField Name="CheckNames" Type="Boolean" DefaultValue="false" /> 
            <ext:ModelField Name="Names" /> 
           </Fields> 
          </ext:Model> 
         </Model> 
        </ext:Store> 
       </Store> 
       <View> 
        <ext:GridView ID="GridView6" runat="server" TrackOver="true" StripeRows="true" /> 
       </View> 
       <ColumnModel ID="ColumnModel15" runat="server"> 
        <Columns> 
         <ext:ComponentColumn ID="radColumn" Text="radCol" runat="server" Width="30" DataIndex="CheckNames"> 
          <Component> 
           <ext:Radio ID="rdGo" runat="server" Name="vGO"> 
           </ext:Radio> 
          </Component> 
         </ext:ComponentColumn> 
         <ext:CheckColumn ID="CheckColumn" runat="server" Text="chkCol" Editable="false" Filterable="false" DataIndex="CheckNames" Width="35" MenuDisabled="true"> 
          <Items> 
           <ext:Checkbox runat="server" ID="chkRptGeoO" Checked="false"> 
           </ext:Checkbox> 
          </Items> 
         </ext:CheckColumn> 
         <ext:Column ID="NamesColumn" runat="server" Text="names" DataIndex="Names" Width="200" /> 
        </Columns> 
       </ColumnModel> 
       <Plugins> 
        <ext:FilterHeader ID="FilterHeader1" runat="server"> 
        </ext:FilterHeader> 
       </Plugins> 
      </ext:GridPanel> 
     </div> 
    </form> 
</body> 
</html> 

在这里使用Ext.NET 4.2.1。

相关问题