天天看點

動态生成GridView Column

#region動态生成gridview

    ///<summary>

    ///動态生成gridview

    ///</summary>

    ///<paramname="strName">表名</param>

    privatevoid BindGridView(stringstrName)

    {

        if(!string.IsNullOrEmpty(strName))

        {

            string strSql= string.Format(@"selecta.COLUMN_NAME, t.comments as filed

            fromuser_col_comments t, user_tab_columns a

            wheret.table_name = upper('{0}') and t.table_name = a.TABLE_NAME and t.column_name =a.COLUMN_NAME

            order by filed", strName);

            DataTabledt = OracleHelperImm.getDataTable(strSql);

            if(dt != null && dt.Rows.Count > 0)

            {

               gridList.Columns.Clear();

                BindFixed();

                foreach (DataRow dr in dt.Rows)

                {

                    if (strName == "OWT_blocnew")

                    {

                        if (dr[0].ToString() == "BLOC_NAME")

                        {

                            BoundField bfColumn = newBoundField();

                           bfColumn.DataField = dr[0].ToString();

                           bfColumn.HeaderText = dr[1].ToString();

                           gridList.Columns.Add(bfColumn);

                        }

                    }

                    else

                        if (dr[0].ToString() != "ID"&& dr[0].ToString() != "WORKORDER_ID")

                            bfColumn.DataField = dr[0].ToString();

                }

            }

        }

        else

           gridList.Columns.Clear();

            BindFixed();

        }

    }

    ///工單固定清單

    privatevoid BindFixed()

        TemplateFieldtemplateField0 = new TemplateField();

        templateField0.ItemTemplate = new chkItem1();

       gridList.Columns.Add(templateField0);

        BoundFieldbfColumn10 = new BoundField();

        bfColumn10.DataField = "batch_no";

        bfColumn10.HeaderText = "批次号";

        gridList.Columns.Add(bfColumn10);

        BoundFieldbfColumn11 = new BoundField();

        bfColumn11.DataField = "order_id";

        bfColumn11.HeaderText = "工單号";

       gridList.Columns.Add(bfColumn11);

        BoundFieldbfColumn1 = new BoundField();

        bfColumn1.DataField = "ORDER_STATE";

        bfColumn1.HeaderText = "工單狀态";

       gridList.Columns.Add(bfColumn1);

        BoundFieldbfColumn2 = new BoundField();

        bfColumn2.DataField = "type_name";

        bfColumn2.HeaderText = "工單類型";

        gridList.Columns.Add(bfColumn2);

        BoundFieldbfColumn3 = new BoundField();

        bfColumn3.DataField = "CUSTOM_NO";

        bfColumn3.HeaderText = "受理号碼";

       bfColumn3.ItemStyle.HorizontalAlign = HorizontalAlign.Right;

        gridList.Columns.Add(bfColumn3);

        BoundFieldbfColumn4 = new BoundField();

        bfColumn4.DataField = "DEAL_NAME";

        bfColumn4.HeaderText = "處理人";

       gridList.Columns.Add(bfColumn4);

        BoundFieldbfColumn5 = new BoundField();

        bfColumn5.DataField = "CREATE_NAME";

        bfColumn5.HeaderText = "建立人";

       gridList.Columns.Add(bfColumn5);

        BoundFieldbfColumn6 = new BoundField();

        bfColumn6.DataField = "COM_NAME";

        bfColumn6.HeaderText = "所屬縣市";

        gridList.Columns.Add(bfColumn6);

        BoundFieldbfColumn7 = new BoundField();

        bfColumn7.DataField = "CREATE_DATE";

        bfColumn7.HeaderText = "開始時間";

       bfColumn7.ItemStyle.HorizontalAlign = HorizontalAlign.Center;

        gridList.Columns.Add(bfColumn7);

        BoundFieldbfColumn8 = new BoundField();

        bfColumn8.DataField = "LIMITED_TIME";

        bfColumn8.HeaderText = "最後期限";

       bfColumn8.ItemStyle.HorizontalAlign = HorizontalAlign.Center;

       gridList.Columns.Add(bfColumn8);

        BoundFieldbfColumn9 = new BoundField();

        bfColumn9.DataField = "DEAL_DATE";

        bfColumn9.HeaderText = "分公司處理時間";

       bfColumn9.ItemStyle.HorizontalAlign = HorizontalAlign.Center;

       gridList.Columns.Add(bfColumn9);

        BoundFieldbfColumn13 = new BoundField();

        bfColumn13.DataField = "no_answer";

        bfColumn13.HeaderText = "無人接聽次數";

       bfColumn13.ItemStyle.HorizontalAlign = HorizontalAlign.Center;

       gridList.Columns.Add(bfColumn13);

        BoundFieldbfColumn14 = new BoundField();

        bfColumn14.DataField = "user_reject";

        bfColumn14.HeaderText = "使用者拒接次數";

       bfColumn14.ItemStyle.HorizontalAlign = HorizontalAlign.Center;

       gridList.Columns.Add(bfColumn14);

        BoundFieldbfColumn12 = new BoundField();

        bfColumn12.DataField = "FINISH_DATE";

        bfColumn12.HeaderText = "完成時間";

       bfColumn12.ItemStyle.HorizontalAlign = HorizontalAlign.Center;

       gridList.Columns.Add(bfColumn12);

        TemplateFieldtemplateField = new TemplateField();

        templateField.HeaderText = "操作";

        templateField.ItemTemplate =new chkItem();

       gridList.Columns.Add(templateField);

    publicclass chkItem :Control, ITemplate

        publicvoid InstantiateIn(Controlcontainer)

            HyperLinkchk = new HyperLink();

            chk.ID = "chkItem";

            chk.Text = "下載下傳";

            chk.ForeColor =System.Drawing.Color.Blue;

           container.Controls.Add(chk);

    publicclass chkItem1: Control, ITemplate

            HtmlInputCheckBoxcb = new HtmlInputCheckBox();

            cb.ID = "recid";

           container.Controls.Add(cb);