Esempio n. 1
0
        private GroupingView AddGroupView(string bjlx)
        {
            GroupingView groupingView = new GroupingView();

            groupingView.ID                = "GroupingView_" + bjlx + "_" + DateTime.Now.ToString("HHmmss");
            groupingView.ForceFit          = true;
            groupingView.MarkDirty         = false;
            groupingView.ShowGroupName     = false;
            groupingView.EnableNoGroups    = true;
            groupingView.HideGroupedColumn = true;
            groupingView.GroupByText       = "用该列进行分组";
            groupingView.ShowGroupsText    = "显示分组";
            return(groupingView);
        }
    private void LoadColumnForGrid(DataTable table)
    {
        string[] headerColumn      = ("" + ColumnHeader).Split(',');
        string[] widthList         = ("" + ColumnWidth).Split(',');
        string[] render            = ("" + Render).Split(',');
        int      columnCount       = table.Columns.Count;
        bool     usingHeaderColumn = (headerColumn.Count() == columnCount);

        if (!string.IsNullOrEmpty(LockedColumn))
        {
            Ext.Net.LockingGridView lkv = new LockingGridView()
            {
                ID = "lkv",
            };
            GridPanel1.View.Add(lkv);
        }
        else if (!string.IsNullOrEmpty(GroupField))
        {
            Ext.Net.GroupingView group = new GroupingView()
            {
                ID                = "GroupingView1",
                ForceFit          = false,
                MarkDirty         = false,
                ShowGroupName     = false,
                EnableNoGroups    = true,
                HideGroupedColumn = HideGrouped
            };
            GridPanel1.View.Add(group);
        }
        for (int i = 0; i < columnCount; i++)
        {
            if (table.Columns[i].ColumnName == IDProperty && DisplayPrimaryColumn == false)
            {
                continue;
            }
            switch (table.Columns[i].DataType.ToString())
            {
            case "System.Boolean":
                string _render = GetRender(render, table.Columns[i].ColumnName);
                if (!string.IsNullOrEmpty(_render))
                {
                    Column _column = new Column();
                    _column.ColumnID    = table.Columns[i].ColumnName;
                    _column.DataIndex   = table.Columns[i].ColumnName;
                    _column.Header      = usingHeaderColumn ? headerColumn[i].Trim() : table.Columns[i].ColumnName;
                    _column.Locked      = GetLockingStatus(table.Columns[i].ColumnName);
                    _column.Width       = GetColumnWidth(widthList, table.Columns[i].ColumnName);
                    _column.Renderer.Fn = _render;
                    GridPanel1.ColumnModel.Columns.Add(_column);
                }
                else
                {
                    CheckColumn chkColumn = new CheckColumn();
                    chkColumn.ColumnID  = table.Columns[i].ColumnName;
                    chkColumn.DataIndex = table.Columns[i].ColumnName;
                    chkColumn.Header    = usingHeaderColumn ? headerColumn[i].Trim() : table.Columns[i].ColumnName;
                    chkColumn.Locked    = GetLockingStatus(table.Columns[i].ColumnName);
                    chkColumn.Width     = GetColumnWidth(widthList, table.Columns[i].ColumnName);
                    GridPanel1.ColumnModel.Columns.Add(chkColumn);
                }
                break;

            case "System.DateTime":
                DateColumn dcolumn = new DateColumn();
                dcolumn.ColumnID  = table.Columns[i].ColumnName;
                dcolumn.DataIndex = table.Columns[i].ColumnName;
                dcolumn.Header    = usingHeaderColumn ? headerColumn[i].Trim() : table.Columns[i].ColumnName;
                dcolumn.Format    = "dd/MM/yyyy";
                dcolumn.Locked    = GetLockingStatus(table.Columns[i].ColumnName);
                dcolumn.Width     = GetColumnWidth(widthList, table.Columns[i].ColumnName);
                GridPanel1.ColumnModel.Columns.Add(dcolumn);
                break;

            default:
                Column column = new Column();
                column.ColumnID    = table.Columns[i].ColumnName;
                column.DataIndex   = table.Columns[i].ColumnName;
                column.Header      = usingHeaderColumn ? headerColumn[i].Trim() : table.Columns[i].ColumnName;
                column.Locked      = GetLockingStatus(table.Columns[i].ColumnName);
                column.Width       = GetColumnWidth(widthList, table.Columns[i].ColumnName);
                column.Renderer.Fn = GetRender(render, table.Columns[i].ColumnName);     //"RenderHightLight";
                GridPanel1.ColumnModel.Columns.Add(column);
                break;
            }
        }
    }