Esempio n. 1
0
 // this event is raised prior to the data being written to the underlying datasource
 private void c1TrueDBGrid1_BeforeColUpdate(object sender, C1.Win.C1TrueDBGrid.BeforeColUpdateEventArgs e)
 {
     // e.ColIndex is the index in the grid's Column collection
     C1.Win.C1TrueDBGrid.C1DataColumn dc = this.c1TrueDBGrid1.Columns[e.ColIndex];
     // if we're on the "OrderDate" column with an empty string then set it to null
     if (dc.DataField == "OrderDate" && dc.Text.Length == 0)
     {
         e.OldValue = System.DBNull.Value;
     }
 }
Esempio n. 2
0
        void My_FormatearGrid(C1.Win.C1TrueDBGrid.C1TrueDBGrid xDg, string[,]  arrColumnas, DataTable dtDataTable, bool boo_Alternar)
        {
            int n_NumCols;
            int A;
            int IntNumeroElementos;

            Font MyFont;

            MyFont = new Font(xDg.Splits[0].Style.Font, FontStyle.Regular);
            xDg.Splits[0].Style.Font = MyFont;

            xDg.Columns.Clear();
            //while (xDg.Columns.Count != 0)
            //{
            //    xDg.Columns.RemoveAt(0);
            //}

            n_NumCols     = xDg.Columns.Count;
            xDg.RowHeight = 22;
            //xDg.Style.HorizontalAlignment = C1.Win.C1TrueDBGrid.AlignHorzEnum.Center;
            xDg.Style.VerticalAlignment       = C1.Win.C1TrueDBGrid.AlignVertEnum.Center;
            xDg.Splits[0].ColumnCaptionHeight = 30;
            xDg.AlternatingRows = boo_Alternar;
            xDg.Splits[0].EvenRowStyle.BackColor  = Color.AliceBlue;
            xDg.Splits[0].EvenRowStyle.BackColor2 = Color.AntiqueWhite;

            IntNumeroElementos = Convert.ToInt32(arrColumnas.GetLongLength(0)) - 1;

            #region ASIGNAR DATOS A LA GRILLA
            for (A = 0; A <= IntNumeroElementos; A++)
            {
                C1.Win.C1TrueDBGrid.C1DataColumn colColum = new C1.Win.C1TrueDBGrid.C1DataColumn();

                xDg.Columns.Insert(n_NumCols, colColum);
                xDg.Splits[0].DisplayColumns[colColum].Visible = true;

                xDg.Splits[0].DisplayColumns[colColum].HeadingStyle.HorizontalAlignment = C1.Win.C1TrueDBGrid.AlignHorzEnum.Center;         // centramos el titulo de la columna

                if (Convert.ToInt32(arrColumnas[A, 1]) > 0)
                {
                    xDg.Splits[0].DisplayColumns[colColum].Width = Convert.ToInt32(arrColumnas[A, 1]);                                      // establecemos el ancho de la columna
                }
                else
                {
                    xDg.Splits[0].DisplayColumns[colColum].Visible = false;
                }

                xDg.Columns[0].Caption   = arrColumnas[A, 0];                                                                               // establecemos el titulo de la columna
                xDg.Columns[0].DataField = arrColumnas[A, 3];                                                                               // establecemos el campo de la columna

                // establecemos el alineamiento de la columna
                if (arrColumnas[A, 2] == "D")
                {
                    xDg.Splits[0].DisplayColumns[colColum].Style.HorizontalAlignment = C1.Win.C1TrueDBGrid.AlignHorzEnum.Far;
                    xDg.Columns[0].NumberFormat = "0.00";

                    if (arrColumnas.GetLength(1) == 5)
                    {
                        xDg.Columns[0].NumberFormat = arrColumnas[A, 4];
                    }
                    else
                    {
                        xDg.Columns[0].NumberFormat = "0.00";
                    }
                    //int n_row = 0;
                    //for(n_row =0; n_row <= dtDataTable.Rows.Count-1; n_row++)
                    //{
                    //    if (dtDataTable.Rows[n_row]["c_tit"] == arrColumnas[A, 0])
                    //    {
                    //        xDg.Columns[0].NumberFormat = dtDataTable.Rows[n_row]["c_format"].ToString();
                    //    }
                    //}
                }
                if (arrColumnas[A, 2] == "N")
                {
                    xDg.Splits[0].DisplayColumns[colColum].Style.HorizontalAlignment = C1.Win.C1TrueDBGrid.AlignHorzEnum.Far;
                    xDg.Columns[0].NumberFormat = "0";
                }
                if (arrColumnas[A, 2] == "C")
                {
                    xDg.Splits[0].DisplayColumns[colColum].Style.HorizontalAlignment = C1.Win.C1TrueDBGrid.AlignHorzEnum.Near;
                }

                if (arrColumnas[A, 2] == "F")
                {
                    xDg.Splits[0].DisplayColumns[colColum].Style.HorizontalAlignment = C1.Win.C1TrueDBGrid.AlignHorzEnum.Center;
                    xDg.Columns[0].NumberFormat = "dd/MM/yyyy";
                }

                if (arrColumnas[A, 2] == "H")
                {
                    xDg.Splits[0].DisplayColumns[colColum].Style.HorizontalAlignment = C1.Win.C1TrueDBGrid.AlignHorzEnum.Center;
                    xDg.Columns[0].NumberFormat = "hh:mm:ss";
                }

                if (arrColumnas[A, 2] == "FH")
                {
                    xDg.Splits[0].DisplayColumns[colColum].Style.HorizontalAlignment = C1.Win.C1TrueDBGrid.AlignHorzEnum.Center;
                    xDg.Columns[0].NumberFormat = "dd/MM/yyyy hh:mm:ss";
                }

                if (arrColumnas[A, 2] == "B")
                {
                    C1.Win.C1TrueDBGrid.ValueItemCollection check1 = xDg.Columns[0].ValueItems.Values;

                    xDg.Columns[0].ValueItems.Translate    = true;
                    xDg.Columns[0].ValueItems.Presentation = C1.Win.C1TrueDBGrid.PresentationEnum.CheckBox;

                    check1.Add(new C1.Win.C1TrueDBGrid.ValueItem("0", false));
                    check1.Add(new C1.Win.C1TrueDBGrid.ValueItem("1", true));

                    xDg.Columns[0].ValueItems.DefaultItem = 0;

                    xDg.Splits[0].DisplayColumns[colColum].Style.HorizontalAlignment = C1.Win.C1TrueDBGrid.AlignHorzEnum.Center;
                }

                xDg.Splits[0].DisplayColumns[colColum].FetchStyle = true;
            }
            #endregion

            xDg.AllowAddNew = false;
            xDg.AllowDelete = false;
            xDg.AllowUpdate = false;
            //xDg.ColumnFooters = true;      ' muestra el pie de pagina del grid
            xDg.FilterBar   = true;             // muestra el filtro
            xDg.AllowFilter = false;

            xDg.MarqueeStyle = C1.Win.C1TrueDBGrid.MarqueeEnum.HighlightRow;
            //xDg.HighLightRowStyle.BackColor = Color.DarkRed;
            xDg.HighLightRowStyle.BackColor = Color.OrangeRed;
            xDg.CurrentCellVisible          = true;

            xDg.SetDataBinding(dtDataTable, "", true);
            xDg.DataSource = dtDataTable;
            xDg.Select();
            //''Para activar el filtro de filter drop down
            //'For A = 0 To UBound(xValores) - 1
            //'    xDg.Columns(A).FilterDropdown = True
            //'Next A
        }