现在的位置: 首页 > 综合 > 正文

ext.net 开发学习——GridView 操作(七)

2012年01月21日 ⁄ 综合 ⁄ 共 19305字 ⁄ 字号 评论关闭

细节决定成败

把遇到的一些细节上面的问题 总结下, 虽是小问题,但往往 就是小问题 会阻止你前进的步伐……

壹:GridView 列锁定

一、前台代码实现:

 <ext:GridPanel ID="GridPanel1" TrackMouseOver="true" StripeRows="true" runat="server"
Border="false" Title="人员信息" AutoScroll="true">
<Store>
<ext:Store ID="Store1" runat="server" OnRefreshData="MyData_Refresh">
<Reader>
<ext:JsonReader>
<Fields>
</Fields>
</ext:JsonReader>
</Reader>
</ext:Store>
</Store>
<SelectionModel>
<ext:RowSelectionModel ID="RowSelectionModel1" runat="server" SingleSelect="true" />
</SelectionModel>
<LoadMask ShowMask="true" />
<BottomBar>
<ext:PagingToolbar ID="PagingToolbar1" runat="server" PageSize="30" StoreID="Store1">
</ext:PagingToolbar>
</BottomBar>
<ColumnModel>
<Columns>
</Columns>
</ColumnModel>
<Listeners>
<DblClick Handler="addTab('idEmployeeInfo', 'EmployeeDetail.aspx','员工明细');" />
</Listeners>
<View>
<ext:LockingGridView ID="LockingGridView1" runat="server">
</ext:LockingGridView>
</View>
</ext:GridPanel>

二、后台代码实现:

                Column   col = new Column(); 
col.Header = fieldTable.Rows[i]["FieldCaption"].ToString();
string index = fieldTable.Rows[i]["FieldAlias"].ToString();
col.DataIndex = index;
if (index == "ProNo" || index == "ItemNo" || index == "CustItemNo" || index == "Item_C_Name")
col.Locked = true;

col.Width = Int32.Parse(string.IsNullOrEmpty(fieldTable.Rows[i]["ColWidth"].ToString()) ? "80" : fieldTable.Rows[i]["ColWidth"].ToString());
if (fieldTable.Rows[i]["ControlType"].ToString().Contains("Combobox"))
col.Renderer = new Renderer() { Fn = "rendererMeterTypeCombobox" };
col.Editor.Add(GetFiledControl(fieldTable.Rows[i]));
base.ColumnModel.Columns.Add(col);

别忘了给你的GridView添加这个属性    base.View.Add(new LockingGridView());//列锁定属性

效果:

贰:GridView日期格式

Ext.Net默认日期显示格式是英文的 “Thu Nov 3 00:00:00 UTC+0800 2011” 第一感觉是直接格式化转化。有属性DateFormat 但是设置了还是不管用。此时注意:不要被Ext的Column忽悠了,它还有一个DateColumn : DateColumn dtCol = new DateColumn(); dtCol.Format = "yyyy-MM-dd"; 即可

 

处理下效果:

 

叁:行号

见图说话

需要在红框左边添加 “行号”

GridView.ColumnModel.Columns.Add(new RowNumbererColumn());

效果:

 

反之  删除就不显示

 

 2011-11-05

肆:列统计

 

      //列统计计算
function GridSum() {
var src = storehide.getValue();//查找那些列需要进行统计 eg:“txtTotProdAmt,sum,NTSaleAmt|txtTotVAT,sum,VAT"
var str = src.split('|');
for (var i = 0; i < str.length; i++) {
var strs = str[i].split(',');
var sum = 0;
store2.each(function(record) {//Grid源Store ID:store2
if (strs[1] == "sum") {
if (Number(record.get(strs[2])) > 0)
sum += Number(record.get(strs[2]));
}
});
Ext.getCmp(strs[0]).setValue(sum);
}
}

HTML

    <ext:Store runat="server" ID="store2" AutoLoad="true" OnRefreshData="stGrid_Refresh"
ShowWarningOnFailure
="false" SkipIdForNewRecords="false" RefreshAfterSaving="Always"
OnBeforeStoreChanged
="stGrid_BeforeChanged">
<Reader>
<ext:JsonReader>
<Fields>
<ext:RecordField Name="ProNo" Type="String"/>
<ext:RecordField Name="ItemNo" Type="String"/>
<ext:RecordField Name="CustItemNo" Type="String"/>
<ext:RecordField Name="Item_C_Name" Type="String"/>
<ext:RecordField Name="Item_C_Spec" Type="String"/>
<ext:RecordField Name="BUnit" Type="String"/>
<ext:RecordField Name="CBUnit" Type="String"/>
<ext:RecordField Name="UTRM" Type="String"/>
<ext:RecordField Name="UTR" Type="String"/>
<ext:RecordField Name="Unit" Type="String"/>
<ext:RecordField Name="CUnit" Type="String"/>
<ext:RecordField Name="Brand" Type="String"/>
<ext:RecordField Name="Color" Type="String"/>
<ext:RecordField Name="Material" Type="String"/>
<ext:RecordField Name="PTFID" Type="String"/>
<ext:RecordField Name="ManufNote" Type="String"/>
<ext:RecordField Name="Packing" Type="String"/>
<ext:RecordField Name="AddFld1" Type="String"/>
<ext:RecordField Name="AddFld2" Type="String"/>
<ext:RecordField Name="AddFld3" Type="String"/>
<ext:RecordField Name="AddFld4" Type="String"/>
<ext:RecordField Name="AddFld5" Type="String"/>
<ext:RecordField Name="AddFld6" Type="String"/>
<ext:RecordField Name="AddFld7" Type="String"/>
<ext:RecordField Name="AddFld8" Type="String"/>
<ext:RecordField Name="AddFld9" Type="String"/>
<ext:RecordField Name="AddFld10" Type="String"/>
<ext:RecordField Name="AddFld11" Type="String"/>
<ext:RecordField Name="AddFld12" Type="String"/>
<ext:RecordField Name="AddFld13" Type="String"/>
<ext:RecordField Name="AddFld14" Type="String"/>
<ext:RecordField Name="AddFld15" Type="String"/>
<ext:RecordField Name="AddFld16" Type="String"/>
<ext:RecordField Name="AddFld17" Type="String"/>
<ext:RecordField Name="AddFld18" Type="String"/>
<ext:RecordField Name="AddFld19" Type="String"/>
<ext:RecordField Name="AddFld20" Type="String"/>
<ext:RecordField Name="AddFld21" Type="String"/>
<ext:RecordField Name="AddFld22" Type="String"/>
<ext:RecordField Name="AddFld23" Type="String"/>
<ext:RecordField Name="AddFld24" Type="String"/>
<ext:RecordField Name="AddFld25" Type="String"/>
<ext:RecordField Name="BSaleQty" Type="Float"/>
<ext:RecordField Name="BSalePrice" Type="Float"/>
<ext:RecordField Name="SaleQty" Type="Float"/>
<ext:RecordField Name="OrgSalePrice" Type="Float"/>
<ext:RecordField Name="OffRT" Type="Float"/>
<ext:RecordField Name="OffAmt" Type="Float"/>
<ext:RecordField Name="SalePrice" Type="Float"/>
<ext:RecordField Name="SaleAmt" Type="Float"/>
<ext:RecordField Name="VATRT" Type="Float"/>
<ext:RecordField Name="VAT" Type="Float"/>
<ext:RecordField Name="NTSalePrice" Type="Float"/>
<ext:RecordField Name="NTSaleAmt" Type="Float"/>
</Fields>
</ext:JsonReader>
</Reader>
<Listeners>
<AfterRender Handler="GridSum();"/>
<Update Handler="GridSum();"/>
</Listeners>
</ext:Store>

 

 

 

伍:行统计

 

源码:

var afterEdit = function(e) {
var hid = hidRow2.getValue();
var strList = hid.split('|');
var strs;
var str;
var varRecord;
var varSelected;
var index;
var sum;
varRecord = gp2.getSelectionModel().getSelected();//gp2: Grid ID
index = store2.indexOf(varRecord); //获取选中了那一行 store2 :Grid数据源ID
if (index < 0)
return;
for (var i = 0; i < strList.length; i++) {
strs = strList[i].split(',');
if (strs[0].indexOf("["+e.field+"]") == -1)
continue;
if (strs.length < 2)
return;
str = strs[2].split('#'); //strs[] = [NTSaleAmt]+[VAT],SaleAmt,NTSaleAmt#VAT
for (var j = 0; j < str.length; j++) {//循环替换
varSelected = store2.getAt(index).get(str[j]); //取指定的值
strs[0] = strs[0].replace('[' + str[j] + ']', varSelected).replace(str[j], varSelected);
}
store2.getAt(index).set(strs[1], eval(strs[0])); //给指定赋值 strs[] = [NTSaleAmt]+[VAT],SaleAmt,NTSaleAmt#VAT
}
};

注意:

事件要给到Grid 不是Store

GridPanel.Listeners.AfterEdit.Fn = "afterEdit";

陆:单击取行值

 

 

源码:

  

    <script language="javascript" type="text/javascript">
function details() {
var gsm = gpList.getSelectionModel(); //gpList:GridPanel ID
var rows = gsm.getSelections();
if (rows.length > 0) {
for (var i = 0; i < rows.length; i++) {
var row = rows[i];
var data = row.get('ScNo');//ScNo 要取值的列名
alert(data);
}
}
}
</script>

 

柒:One to Many

需求效果:见图

                    

源码:

方案一:

给上面主GridPanel 添加 属性

 <Listeners>
<Click Fn="details" />
</Listeners> 

<SelectionModel>
<ext:RowSelectionModel ID="RowSelectionModel2" runat="server" SingleSelect="true">

</ext:RowSelectionModel>
</SelectionModel>

这个不可缺少

JS代码: 

    <script language="javascript" type="text/javascript">
        //GridPanel 加载 方案一
        function details() {
            var gsm = gpList.getSelectionModel(); //gpList:GridPanel ID
            var rows = gsm.getSelections();
            if (rows.length > 0) {
                for (var i = 0; i < rows.length; i++) {
                    var row = rows[i];
                    var data = row.get('ScNo'); //ScNo 要取值的列名
                    Ext.net.DirectMethods.GetInfosByID(data);
                }
            }
        }
    </script>

  

 

CS: 

        #region  GridPanel 加载 方案一
        [DirectMethod]
        public void GetInfosByID(string strID)
        {
            if (string.IsNullOrEmpty(strID))
                return;
            DataRow[] itemPanelList = structTabPageTable.Select("TreeLevel=2 AND StrucLevel<3");
            for (int i = 0; i < itemPanelList.Length; i++)
            {
                DataTable mould = MouldDao.GetMouldTables(structStr, itemPanelList[i]["SQLNo"].ToString());
                DataTable field;
                string index = string.Empty;
                if (itemPanelList[i]["IsStruc"].ToString().ToLower() == "true")
                {
                    index = itemPanelList[i]["SQLNo"].ToString();
                    field = MouldDao.GetMouldFiledsOrderByOrderNo(structStr, index);
                    dataCommand = MouldDao.GetDataCommand(mould, field);
                    dataCommand.Append(" WHERE  ScNo='" + strID + "'");
                    DataTable source = MouldDao.GetDataSource(dataCommand.ToString());
                    if (i == 2)
                    {
                        storeGoods.DataSource = source;
                        storeGoods.DataBind();
                    }

                    if (i == 4)
                    {
                        storePayments.DataSource = source;
                        storePayments.DataBind();
                    }
                    if (i == 5)
                    {
                        storeRecord.DataSource = source;
                        storeRecord.DataBind();
                    }
                    if (i == 6)
                    {
                        storeDomestic.DataSource = source;
                        storeDomestic.DataBind();
                    }
                }
            }
        } 
        #endregion

  

方案二:

根据在线DEMO 

前台代码

 <form id="form1" runat="server">
<ext:ResourceManager ID="RMEmployeeInfos" runat="server" />
<div>
<ext:Store runat="server" ID="storeDomestic" AutoLoad="true" OnRefreshData="stGrid_Refresh"
ShowWarningOnFailure="false" SkipIdForNewRecords="false" RefreshAfterSaving="Always"
OnBeforeStoreChanged="stGrid_BeforeChanged">
<Reader>
<ext:JsonReader IDProperty="ScNo">
<Fields>
<ext:RecordField Name="ScNo" />
<ext:RecordField Name="CustID" Type="String" />
<ext:RecordField Name="BriefName" Type="String" />
<ext:RecordField Name="Item_C_Name" Type="String" />
<ext:RecordField Name="CreateDate" Type="Date" />
<ext:RecordField Name="SMTyp" Type="String" />
<ext:RecordField Name="CustPONo" Type="String" />
<ext:RecordField Name="Memo" Type="String" />
<ext:RecordField Name="OwnerID" Type="String" />
<ext:RecordField Name="OwnerNam" Type="String" />
<ext:RecordField Name="KeyInID" Type="String" />
<ext:RecordField Name="keyInName" Type="String" />
<ext:RecordField Name="KeyInDate" Type="Date" />
<ext:RecordField Name="keyInTime" Type="Date" />
<ext:RecordField Name="LastEditMan" Type="String" />
<ext:RecordField Name="LastEditDate" Type="Date" />
<ext:RecordField Name="AuditState" Type="String" />
<ext:RecordField Name="IsDeleted" Type="String" />
<ext:RecordField Name="SaleID" Type="String" />
<ext:RecordField Name="SaleName" Type="String" />
<ext:RecordField Name="DeptID" Type="String" />
<ext:RecordField Name="DeptName" Type="String" />
<ext:RecordField Name="CUR" Type="String" />
<ext:RecordField Name="RMBEXR" Type="String" />
<ext:RecordField Name="USEXR" Type="String" />
<ext:RecordField Name="TotProdAmt" Type="String" />
<ext:RecordField Name="TotAddFee" Type="String" />
<ext:RecordField Name="TotDeductFee" Type="String" />
<ext:RecordField Name="TotVAT" Type="String" />
<ext:RecordField Name="PaymentMode" Type="String" />
<ext:RecordField Name="DeliveryAddr" Type="String" />
<ext:RecordField Name="FinishDate" Type="Date" />
<ext:RecordField Name="ExpCompany" Type="String" />
<ext:RecordField Name="CompanyBank" Type="String" />
<ext:RecordField Name="CAccountNo" Type="String" />
<ext:RecordField Name="CBankAddr" Type="String" />
<ext:RecordField Name="CBankTel" Type="String" />
<ext:RecordField Name="BContact" Type="String" />
<ext:RecordField Name="BMail" Type="String" />
<ext:RecordField Name="BName" Type="String" />
<ext:RecordField Name="BBank" Type="String" />
<ext:RecordField Name="BAccountNo" Type="String" />
<ext:RecordField Name="AttachCount" Type="Float" />
</Fields>
</ext:JsonReader>
</Reader>
</ext:Store>
<ext:Store runat="server" ID="storeGoods" AutoLoad="true" ShowWarningOnFailure="false"
OnRefreshData="storeGoods_Refresh" SkipIdForNewRecords="false" RefreshAfterSaving="Always">
<Reader>
<ext:JsonReader>
<Fields>
<ext:RecordField Name="ProNo" Type="String" />
<ext:RecordField Name="ItemNo" Type="String" />
<ext:RecordField Name="CustItemNo" Type="String" />
<ext:RecordField Name="Item_C_Name" Type="String" />
<ext:RecordField Name="Item_C_Spec" Type="String" />
<ext:RecordField Name="BUnit" Type="String" />
<ext:RecordField Name="CBUnit" Type="String" />
<ext:RecordField Name="UTRM" Type="String" />
<ext:RecordField Name="UTR" Type="String" />
<ext:RecordField Name="Unit" Type="String" />
<ext:RecordField Name="CUnit" Type="String" />
<ext:RecordField Name="Brand" Type="String" />
<ext:RecordField Name="Color" Type="String" />
<ext:RecordField Name="Material" Type="String" />
<ext:RecordField Name="PTFID" Type="String" />
<ext:RecordField Name="ManufNote" Type="String" />
<ext:RecordField Name="Packing" Type="String" />
<ext:RecordField Name="AddFld1" Type="String" />
<ext:RecordField Name="AddFld2" Type="String" />
<ext:RecordField Name="AddFld3" Type="String" />
<ext:RecordField Name="AddFld4" Type="String" />
<ext:RecordField Name="AddFld5" Type="String" />
<ext:RecordField Name="AddFld6" Type="String" />
<ext:RecordField Name="AddFld7" Type="String" />
<ext:RecordField Name="AddFld8" Type="String" />
<ext:RecordField Name="AddFld9" Type="String" />
<ext:RecordField Name="AddFld10" Type="String" />
<ext:RecordField Name="AddFld11" Type="String" />
<ext:RecordField Name="AddFld12" Type="String" />
<ext:RecordField Name="AddFld13" Type="String" />
<ext:RecordField Name="AddFld14" Type="String" />
<ext:RecordField Name="AddFld15" Type="String" />
<ext:RecordField Name="AddFld16" Type="String" />
<ext:RecordField Name="AddFld17" Type="String" />
<ext:RecordField Name="AddFld18" Type="String" />
<ext:RecordField Name="AddFld19" Type="String" />
<ext:RecordField Name="AddFld20" Type="String" />
<ext:RecordField Name="AddFld21" Type="String" />
<ext:RecordField Name="AddFld22" Type="String" />
<ext:RecordField Name="AddFld23" Type="String" />
<ext:RecordField Name="AddFld24" Type="String" />
<ext:RecordField Name="AddFld25" Type="String" />
<ext:RecordField Name="BSaleQty" Type="Float" />
<ext:RecordField Name="BSalePrice" Type="Float" />
<ext:RecordField Name="SaleQty" Type="Float" />
<ext:RecordField Name="OrgSalePrice" Type="Float" />
<ext:RecordField Name="OffRT" Type="Float" />
<ext:RecordField Name="OffAmt" Type="Float" />
<ext:RecordField Name="SalePrice" Type="Float" />
<ext:RecordField Name="SaleAmt" Type="Float" />
<ext:RecordField Name="VATRT" Type="Float" />
<ext:RecordField Name="VAT" Type="Float" />
<ext:RecordField Name="NTSalePrice" Type="Float" />
<ext:RecordField Name="NTSaleAmt" Type="Float" />
<ext:RecordField Name="CQNo" Type="String" />
<ext:RecordField Name="SONo" Type="String" />
</Fields>
</ext:JsonReader>
</Reader>
<BaseParams>
<ext:Parameter Name="ScNo" Value="Ext.getCmp('#{gpList}') && #{gpList}.getSelectionModel().hasSelection() ? #{gpList}.getSelectionModel().getSelected().id : -1"
Mode="Raw" />
</BaseParams>
<Listeners>
<LoadException Handler="Ext.Msg.alert('加载失败', e.message || response.statusText);" />
</Listeners>
</ext:Store>
<ext:Store runat="server" ID="storePayments" AutoLoad="true" ShowWarningOnFailure="false" OnRefreshData="storePayments_Refresh"
SkipIdForNewRecords="false" RefreshAfterSaving="Always">
<Reader>
<ext:JsonReader>
<Fields>
<ext:RecordField Name="CostTyp" Type="Int" />
<ext:RecordField Name="CostDesc" Type="String" />
<ext:RecordField Name="Ratio" Type="Float" />
<ext:RecordField Name="CostAmt" Type="String" />
<ext:RecordField Name="Memo" Type="String" />
</Fields>
</ext:JsonReader>
</Reader>
<BaseParams>
<ext:Parameter Name="ScNo" Value="Ext.getCmp('#{gpList}') && #{gpList}.getSelectionModel().hasSelection() ? #{gpList}.getSelectionModel().getSelected().id : -1"
Mode="Raw" />
</BaseParams>
<Listeners>
<LoadException Handler="Ext.Msg.alert('加载失败', e.message || response.statusText);" />
</Listeners>
</ext:Store>
<ext:Store runat="server" ID="storeRecord" AutoLoad="true" ShowWarningOnFailure="false" OnRefreshData="storeRecord_Refresh"
SkipIdForNewRecords="false" RefreshAfterSaving="Always">
<Reader>
<ext:JsonReader>
<Fields>
<ext:RecordField Name="pPayDate" Type="Date" />
<ext:RecordField Name="PayDesc" Type="String" />
<ext:RecordField Name="Ratio" Type="String" />
<ext:RecordField Name="PayAmt" Type="String" />
<ext:RecordField Name="Memo" Type="String" />
<ext:RecordField Name="IsPay" Type="String" />
<ext:RecordField Name="PayDate" Type="Date" />
<ext:RecordField Name="CheckAmt" Type="String" />
</Fields>
</ext:JsonReader>
</Reader>
<BaseParams>
<ext:Parameter Name="ScNo" Value="Ext.getCmp('#{gpList}') && #{gpList}.getSelectionModel().hasSelection() ? #{gpList}.getSelectionModel().getSelected().id : -1"
Mode="Raw" />
</BaseParams>
<Listeners>
<LoadException Handler="Ext.Msg.alert('加载失败', e.message || response.statusText);" />
</Listeners>
</ext:Store>
<ext:Store runat="server" ID="storeContract" AutoLoad="true" ShowWarningOnFailure="false" OnRefreshData="storeContract_Refresh"
SkipIdForNewRecords="false" RefreshAfterSaving="Always">
<Reader>
<ext:JsonReader>
<Fields>
<ext:RecordField Name="Term" Type="String" />
</Fields>
</ext:JsonReader>
</Reader>
<BaseParams>
<ext:Parameter Name="ScNo" Value="Ext.getCmp('#{gpList}') && #{gpList}.getSelectionModel().hasSelection() ? #{gpList}.getSelectionModel().getSelected().id : -1"
Mode="Raw" />
</BaseParams>
<Listeners>
<LoadException Handler="Ext.Msg.alert('加载失败', e.message || response.statusText);" />
</Listeners>
</ext:Store>
<ext:Viewport ID="Viewport1" runat="server" Layout="FitLayout">
<Items>
<ext:RowLayout ID="RowLayout1" runat="server">
<Rows>
<ext:LayoutRow RowHeight="0.04">
<ext:Panel runat="server" ID="TopBar">
</ext:Panel>
</ext:LayoutRow>
<ext:LayoutRow RowHeight="0.957">
<ext:Panel runat="server" Border="false">
<Items>
<ext:BorderLayout runat="server">
<West MinWidth="10" MaxWidth="500" Split="true" CollapseMode="Mini">
<ext:Panel ID="Panel5" runat="server" Width="230" AutoScroll="true">
<Items>
<ext:TabPanel runat="server" Padding="4" Border="false">
<Items>
<ext:Panel runat="server" Title="查询" Border="false">
<Items>
<ext:Label ID="Label1" runat="server" Html="<font style='font-weight:bolder;font-size:13px' >按下面任何标准进行搜索</font>" />
<ext:Panel ID="Panel7" runat="server" Border="false" Padding="5">
<Items>
<ext:FormPanel ID="FormPanel3" Border="false" runat="server" Padding="5" LabelWidth="70">
<Items>
<ext:CompositeField ID="CompositeField1" AnchorHorizontal="100%" runat="server" LabelAlign="Top"
FieldLabel="关键字">
<Items>
<ext:TextField ID="txtKeyWord" EmptyText="关键字" LabelAlign="Top" runat="server" Width="120" />
</Items>
</ext:CompositeField>
<ext:CompositeField ID="CompositeField2" runat="server" FieldLabel="在这儿查找">
<Items>
<ext:MultiCombo runat="server" Width="120" ID="cobSelect" EmptyText="请选择寻找范围" SelectionMode="Checkbox">
<Items>
<ext:ListItem Text="客户编号" Value="1" />
<ext:ListItem Text="审核标志" Value="2" />
<ext:ListItem Text="业务员" Value="3" />
<ext:ListItem Text="客户全名" Value="4" />
</Items>
</ext:MultiCombo>
</Items>
</ext:CompositeField>
<ext:CompositeField ID="CompositeField3" runat="server" FieldLabel="精确查找">
<Items>
<ext:Checkbox ID="chkExactMatch" runat="server" FieldLabel="精确查找">
</ext:Checkbox>
</Items>
</ext:CompositeField>
</Items>
</ext:FormPanel>
</Items>
</ext:Panel>
<ext:Panel ID="Panel8" Border="false" runat="server" Title="更多高级选项" FormGroup="true"
Padding="5">
<Items>
<ext:FormPanel ID="FormPanel1" Border="false" runat="server" Padding="5" LabelWidth="70">
<Items>
<ext:CompositeField ID="CompositeField4" AnchorHorizontal="100%" runat="server" FieldLabel="客户">
<Items>
<ext:TriggerField ID="tfDeptID" EmptyText="客户" runat="server" Width="120">
<Triggers>
<ext:FieldTrigger Icon="Ellipsis" Qtip="客户" />
</Triggers>
</ext:TriggerField>
</Items>
</ext:CompositeField>
</Items>
</ext:FormPanel>
</Items>
</ext:Panel>
<ext:Panel runat="server" Padding="30" Region="Center" Border="false">
<Items>
<ext:CompositeField ID="CompositeField6" runat="server" Region="Center">
<Items>
<ext:Button ID="btn_Search" runat="server" Text="搜索" Width="70">
<Listeners>
<Click Handler="Ext.net.DirectMethods.btnSearch()" />
</Listeners>
</ext:Button>
<ext:Button ID="btmReset" runat="server" Text="清空" Width="70">
<Listeners>
<Click Handler="Ext.net.DirectMethods.btnReset()" />
</Listeners>
</ext:Button>
</Items>
</ext:CompositeField>
</Items>
</ext:Panel>
</Items>
</ext:Panel>
</Items>
</ext:TabPanel>
</Items>
</ext:Panel>
</West>
<Center>
<ext:Panel runat="server" Border="false" AutoScroll="true">
<Items>
<ext:BorderLayout ID="BorderLayout1" runat="server">
<Center>
<ext:Panel ID="Panel3" Border="false" runat="server" Layout="FitLayout">
<Items>
<ext:GridPanel runat="server" ID="gpList" StoreID="storeDomestic" TrackMouseOver="true">
<ColumnModel runat="server">
<Columns>
<ext:RowNumbererColumn Locked="true" />
<ext:Column DataIndex="ScNo" Header="销合同编号" Locked="true" />
<ext:Column DataIndex="CustID" Header="客户编号" Locked="true" />
<ext:Column DataIndex="BriefName" Header="客户简称" Locked="true" />
<ext:DateColumn DataIndex="CreateDate" Header="签约日期" Locked="true" Format="yyyy-MM-dd" />
<ext:Column DataIndex="SMTyp" Header="销售方式" />
<ext:Column DataIndex="CustPONo" Header="客户订单编号" />
<ext:Column DataIndex="Memo" Header="备注" />
<ext:Column DataIndex="OwnerID" Header="拥有人" />
<ext:Column DataIndex="OwnerName" Header="拥有人名称" />
<ext:Column DataIndex="KeyInID" Header="录入人工号" />
<ext:Column DataIndex="keyInName" Header="录入人名称" />
<ext:DateColumn DataIndex="KeyInDate" Header="录入日期" Format="yyyy-MM-dd" />
<ext:DateColumn DataIndex="keyInTime" Header="录入时间" Format="yyyy-MM-dd" />
<ext:Column DataIndex="LastEditMan" Header="最后一次修改人" />
<ext:DateColumn DataIndex="LastEditDate" Header="最后一次

抱歉!评论已关闭.