private void button1_Click(object sender, EventArgs e) { if (pivotDataSourceEh1.ColumnFields.Count == 0 && pivotDataSourceEh1.RowFields.Count == 0) { MessageBox.Show("Please, assign Column Fields and/or Row Fields to make Pivot Structure!"); } else { try { pivotDataSourceEh1.BuildPivotData(); } catch (Exception exp) { if (EhLibUtils.IsCriticalException(exp)) { throw; } else { MessageBox.Show(exp.Message); } } } tabControl1.SelectedTab = tabPage1; }
private void dataGridProgressBarColumn1_DataCellFormatParamsNeeded(object sender, DataGridProgressBarDataCellFormatParamsNeededEventArgs e) { if (e.Row == null) { return; } object val = e.Column.GetRowValue(e.Row); if (val is Decimal) { double dValue = (double)(Decimal)val; if (dValue > 100 / 4) { double quota = (double)(((Decimal)val - 100 / 4) / (100 / 4 * 3) * 255); if (quota > 255) { quota = 255; } e.CellArgs.BarFillColor = EhLibUtils.ApproximateColor(e.CellArgs.BarFillColor, Color.FromArgb(241, 171, 50), quota); } if (dValue > dataGridProgressBarColumn1.MaxValue) { e.CellArgs.Font = boldProgressFont; } } }
private void dataGrid1_IndicatorColumn_CellPaint(object sender, DataGridIndicatorCellPaintEventArgs e) { e.PaintBackground(e); if (e.Row == null) { return; } DataGridColumn col = dataGrid1.Columns.FindColumnByPropertyName("Continent"); string value = col.GetRowDisplayText(e.Row); if (value == "North America") { Bitmap im = Properties.Resources.Globe_North_America_16x16; //im.MakeTransparent(); Rectangle imageAreaRect = e.ClientRect; imageAreaRect.X = imageAreaRect.Right - 16; imageAreaRect.Width = 16; Rectangle imageArea = new Rectangle(Point.Empty, im.Size); imageArea = EhLibUtils.RectCenter(imageArea, imageAreaRect); e.Graphics.DrawImage(im, imageArea); } Rectangle newPaintRect = e.ClientRect; newPaintRect.Width = newPaintRect.Width - 16; e.ClientRect = newPaintRect; e.PaintForeground(e); e.Handled = true; }
/// <summary> /// The dataGrid1.IndicatorTitle.CellPaint event handler /// Draw question mark in question mark area, /// reduce the area size of standard rendering, /// than call default paint handler. /// </summary> private void dataGrid1_IndicatorTitle_CellPaint(object sender, BaseGridCellPaintEventArgs e) { //PaintBackground Rectangle custBackRect = e.ClientRect; custBackRect.Width = 10; if (custBackRect.Contains(e.InCellMousePos)) { e.Graphics.FillRectangle(new SolidBrush(Color.BurlyWood), custBackRect); } else { e.Graphics.FillRectangle(new SolidBrush(SystemColors.ButtonFace), custBackRect); } EhLibUtils.DrawText(e.Graphics, "?", new Font(dataGrid1.Font.FontFamily, 5), custBackRect, SystemColors.WindowText, HorizontalAlignment.Center, VerticalAlignment.Center, 0); //PaintForeground Rectangle newBackgroundRect = e.ClientRect; newBackgroundRect.X = newBackgroundRect.X + 10; newBackgroundRect.Width = newBackgroundRect.Width - 10; e.ClientRect = newBackgroundRect; e.PaintBackground(e); e.PaintForeground(e); e.Handled = true; }
private void dataGridEh1RegionColumn_DataCellManagerNeeded(object sender, DataGridDataCellManagerNeededEventArgs e) { object val = dataGridEh1CountryColumn.GetRowValue(e.Row); if (!EhLibUtils.DBValueEqual("USA", val)) { e.CellManager = blankCell; } }
private void PaintTransportIcon(Graphics graphics, Rectangle iconRect, int iconPos) { Image image = imageList1.Images[iconPos]; Rectangle imageArea = new Rectangle(Point.Empty, image.Size); imageArea = EhLibUtils.RectCenter(imageArea, iconRect); graphics.DrawImage(image, imageArea); }
private void dataGridTextColumn3_DataCellFormatParamsNeeded(object sender, DataGridDataCellFormatParamsNeededEventArgs e) { if (e.Row == null) { return; } if (EhLibUtils.DBValueEqual(e.Column.GetRowValue(e.Row), "North America")) { e.CellArgs.Font = new Font(e.CellArgs.Font, FontStyle.Bold); } }
private string ObjectToString(object v) { if (EhLibUtils.DBValueEqual(v, null)) { return(""); } else { return(v.ToString()); } }
private void dataGridEh1_DataGrouping_GroupDescriptionsChanged(object sender, EventArgs e) { int cnt = dataGridEh1.DataGrouping.GroupDescriptions.Count; for (int i = 0; i < cnt; i++) { DataGridGroupDescription gd = dataGridEh1.DataGrouping.GroupDescriptions[i]; int quota = 255 * i / cnt; gd.BackColor = EhLibUtils.ApproximateColor(Color.NavajoWhite, dataGridEh1.BackColor, quota); } }
private void dataGridEh1_TreeView_NewNodeInit(object sender, EhLib.WinForms.DataGridTreeViewNewNodeInitEventArgs e) { DataRowView rowView = e.Row.SourceItem as DataRowView; object ExpandedObj = rowView["Expanded"]; if (!EhLibUtils.DBValueEqual(ExpandedObj, null) && (int)ExpandedObj == 1) { e.Node.Expanded = true; } else { e.Node.Expanded = false; } }
/// <summary> /// columnUnitPrice.Footer.RowStepCalculation event handler /// Calculate custCalculator step for one Row /// </summary> private void columnUnitPrice_Footer_RowStepCalculation(object sender, DataGridFooterCalculationEventArgs e) { if (e.FooterItemIndex == 1) { object upVal = columnUnitPrice.GetRowValue(e.Row); object qnVal = columnQuantity.GetRowValue(e.Row); if (!EhLibUtils.DBValueEqual(upVal, null) && !EhLibUtils.DBValueEqual(qnVal, null)) { Decimal upv = Convert.ToDecimal(upVal); Decimal qnv = Convert.ToDecimal(qnVal); Decimal decVal = upv * qnv; custCalculator.StepCalcData(decVal); } } }
private void dataGridProgressBarColumn1_DataCellDisplayValueNeeded(object sender, DataGridDataCellDisplayValueNeededEventArgs e) { if (!EhLibUtils.DBValueEqual(e.CellArgs.Value, null)) { double dValue = (double)(Decimal)e.CellArgs.Value; if (dValue > dataGridProgressBarColumn4.MaxValue) { e.CellArgs.DisplayValue = ">100%"; e.Handled = true; } else if (dValue > 0 && dValue < dataGridProgressBarColumn4.MaxValue / 100 / 2) { e.CellArgs.DisplayValue = "<1%"; e.Handled = true; } } }
private void dataGridTextColumn3_DataCellCustomAreaPaint(object sender, DataGridDataCellPaintEventArgs e) { if (e.Row == null) { return; } BasePaintCellStates cellPaintState = e.CellArgs.State; e.CellArgs.State = e.CellArgs.State & ~BasePaintCellStates.Current & ~BasePaintCellStates.Focused; Rectangle clientRect = e.CellArgs.ClientRect; Rectangle folderAreaRect = e.CellArgs.ClientRect; folderAreaRect.X = e.CellArgs.CustomRect.Left; folderAreaRect.Width = e.CellArgs.ClientRect.Left - e.CellArgs.CustomRect.Left; e.CellArgs.ClientRect = folderAreaRect; e.PaintBackground(e); e.CellArgs.ClientRect = clientRect; e.CellArgs.State = cellPaintState; FileSystemFolterTreeNode node = (FileSystemFolterTreeNode)e.Row.SourceItem; { Rectangle folderSignRect = folderAreaRect; Image folderImage; if (node.Expanded || !node.HasChildren) { folderImage = Properties.Resources.FolderOpen; } else { folderImage = Properties.Resources.FolderClosed; } folderSignRect = new Rectangle(Point.Empty, folderImage.Size); folderSignRect = EhLibUtils.RectCenter(folderSignRect, folderAreaRect); //folderSignRect.X = folderSignRect.Left + 2; e.CellArgs.Graphics.DrawImage(folderImage, folderSignRect); } }
// // Event Handlers // private void colCPUUsage_Title_CellPaint(object sender, EhLib.WinForms.DataGridTitleCellPaintEventArgs e) { e.Paint(e); Rectangle drawRect = e.ClientRect; drawRect = EhLib.WinForms.EhLibUtils.CopyChangeRectangle(drawRect, 2, 2, -4, -2); HorizontalAlignment horzAlign; if ((e.State & EhLib.WinForms.BasePaintCellStates.RowHotTrack) != 0) { horzAlign = HorizontalAlignment.Left; } else { horzAlign = HorizontalAlignment.Right; } string text = cpuUsageTotalPercent.ToString("0") + " %"; EhLibUtils.DrawText(e.Graphics, text, titlePercentFont, drawRect, gridProcessList.Title.ForeColor, horzAlign, VerticalAlignment.Top, 0); e.Handled = true; }
private void DataGrid1_HorzLineParamsNeeded(object sender, DataGridHorzLineParamsNeededEventArgs e) { object sortedVal; object nextSortedVal; DataGridRow nextRow; if (e.Row == null) { return; } DataGridColumn sortedCol; if (dataGrid1.Title.SortMarking.SortMarkers.Count > 0) { sortedCol = dataGrid1.Title.SortMarking.SortMarkers[0].Column; if (e.Row.VisibleIndex < dataGrid1.VisibleRows.Count - 1) { sortedVal = sortedCol.GetRowValue(e.Row); nextRow = dataGrid1.VisibleRows[e.Row.VisibleIndex + 1]; nextSortedVal = sortedCol.GetRowValue(nextRow); if (!EhLibUtils.DBValueEqual(sortedVal, nextSortedVal)) { e.Style = DashStyle.Solid; e.Color = dataGrid1.LineOptions.DarkColor; } } else if (e.Row.VisibleIndex == dataGrid1.VisibleRows.Count - 1) { e.Style = DashStyle.Solid; e.Color = dataGrid1.LineOptions.DarkColor; } } }
private void button2_Click(object sender, EventArgs e) { plannerDataSourceEh1.BeginUpdate(); plannerDataSourceEh1.Resources.Clear(); ReadOnlyCollection <DataGridRow> selRows = gridResources.Selection.SelectedRows; for (int i = 0; i <= selRows.Count - 1; i++) { DataGridRow gridRow = selRows[i]; var res = new PlannerResource(); res.Name = (string)resNameCol.GetRowValue(gridRow); res.ResourceId = i; //(int)resIDCol.GetRowValue(gridRow); switch (i % 4) { case 0: res.Color = Color.Green; break; case 1: res.Color = Color.FromArgb(0x26, 0x84, 0xD9); break; case 2: res.Color = Color.Navy; break; case 3: res.Color = Color.Purple; break; } plannerDataSourceEh1.Resources.Add(res); } //-- Move event to current day BiolifeDataSet.PlannerDataDataTable table = this.biolifeDataSet.PlannerData; DataRow[] foundRows = this.biolifeDataSet.PlannerData.Select("Title = 'Busy time'"); DateTime baseOldDate = ((DateTime)foundRows[0]["StartTime"]).Date; //TimeSpan span = new DateTime(DateTime.Today.Year, 1, 1) - baseOldDate; TimeSpan span = DateTime.Today - baseOldDate; foreach (var r in table) { r.BeginEdit(); r["StartTime"] = (DateTime)r["StartTime"] + span; r["EndTime"] = (DateTime)r["EndTime"] + span; r.EndEdit(); } //-- Fill the Data plannerDataSourceEh1.ClearItems(); foreach (var r in table) { if (r.InPlanner == true) { PlannerDataItem planItem = plannerDataSourceEh1.NewPlannerItem(); planItem.ItemId = r["Id"]; planItem.StartTime = (DateTime)r["StartTime"]; planItem.EndTime = (DateTime)r["EndTime"]; planItem.Title = ObjectToString(r["Title"]); planItem.Body = ObjectToString(r["Body"]); planItem.AllDay = (bool)r["AllDay"]; planItem.ResourceId = r["ResourceID"]; planItem.ReadOnly = (bool)r["ReadOnly"]; if (planItem.ReadOnly) { planItem.FillColor = EhLibUtils.ColorToGray(plannerControlEh1.TimeSpanOptions.GetActualColor()); } plannerDataSourceEh1.FetchTimePlanItem(planItem); } } plannerDataSourceEh1.EndUpdate(); plannerControlEh1.CurrentTime = DateTime.Today; }