Пример #1
0
 private void chartLabaRugi_FormatNumber(object sender, FormatNumberEventArgs e)
 {
     if (e.ElementType == ChartElementType.AxisLabels || e.ElementType == ChartElementType.DataPoint)
     {
         e.LocalizedValue = e.Value.ToString("N2", CultureInfo.GetCultureInfo("id-ID"));
     }
 }
Пример #2
0
 private void chart2_FormatNumber(object sender, FormatNumberEventArgs e)
 {
     if (e.ElementType == ChartElementType.AxisLabels && e.Format == "MyAxisXCustomFormat")
     {
         e.LocalizedValue = new TimeSpan(0, 0, (int)e.Value).ToString(@"mm\:ss");
     }
 }
 private void chart1_FormatNumber(object sender, FormatNumberEventArgs e)
 {
     if (e.ElementType == ChartElementType.AxisLabels && e.ValueType == ChartValueType.DateTime)
     {
         DateTime d1 = DateTime.FromOADate(e.Value);
         DateTime d2 = d1.AddHours(1);
         e.LocalizedValue = $"{d1:HH}-{d2:HH}";
     }
 }
Пример #4
0
 private void Chart1_FormatNumber(object sender, FormatNumberEventArgs e)
 {
     if (sender is Axis)
     {
         Axis a = sender as Axis;
         if (a.AxisName == AxisName.Y)
         {
             if (_view == vhcViewMode.Shares || _view == vhcViewMode.VolumeTotals)
             {
                 e.LocalizedValue = Convert.ToInt64(e.Value).ToFileSizeString(shares_range);
             }
         }
     }
 }
Пример #5
0
        private static void chart_FormatNumber(object sender, FormatNumberEventArgs e)
        {
            if (e.ElementType == ChartElementType.AxisLabels && e.ValueType == ChartValueType.DateTime)
            {
                var value = DateTime.FromOADate(e.Value);

                if (value == value.Date)
                {
                    e.LocalizedValue = value.ToString(CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern);
                }
                else
                {
                    if (value.Second != 0 || Math.Abs(value.Millisecond - 0.0) > 1e-12)
                    {
                        e.LocalizedValue = value.ToString(CultureInfo.CurrentCulture.DateTimeFormat.LongTimePattern);
                    }
                    else
                    {
                        e.LocalizedValue = value.ToString(CultureInfo.CurrentCulture.DateTimeFormat.ShortTimePattern);
                    }
                }
            }
        }
Пример #6
0
 private void FormatNumber(object sender, FormatNumberEventArgs e)
 {
     e.LocalizedValue = e.Value.ToMetric();
 }
Пример #7
0
        /// <summary>
        /// Converts value to string using specified format.
        /// </summary>
        /// <param name="chart">Reference to the chart object.</param>
        /// <param name="obj">Reference to the object being formatted.</param>
        /// <param name="objTag">Additional object tag.</param>
        /// <param name="value">Value converted to string.</param>
        /// <param name="format">Format string.</param>
        /// <param name="valueType">Value type.</param>
        /// <param name="elementType">Chart element type being formatted.</param>
        public static string FormatValue(
            Chart chart,
            object obj,
            object objTag,
            double value,
            string format,
            ChartValueType valueType,
            ChartElementType elementType)
        {
            format = format ?? String.Empty;
            string convertionFormat = format;
            string result           = "";

            // Make sure value index is part of the format
            if (convertionFormat != null && convertionFormat.Length > 0)
            {
                int bracketIndex = convertionFormat.IndexOf('{', 0);
                if (bracketIndex >= 0)
                {
                    while (bracketIndex >= 0)
                    {
                        // If format is not followed by the value index
                        if (!convertionFormat.Substring(bracketIndex).StartsWith("{0:", StringComparison.Ordinal))
                        {
                            // Check charcter prior to the bracket
                            if (bracketIndex >= 1 && convertionFormat.Substring(bracketIndex - 1, 1) == "{")
                            {
                                continue;
                            }
                            else
                            {
                                // Insert value index in format
                                convertionFormat = convertionFormat.Insert(bracketIndex + 1, "0:");
                            }
                        }

                        bracketIndex = convertionFormat.IndexOf('{', bracketIndex + 1);
                    }
                }
                else
                {
                    convertionFormat = "{0:" + convertionFormat + "}";
                }
            }

            // Date/time formating
            if (valueType == ChartValueType.DateTime ||
                valueType == ChartValueType.DateTimeOffset ||
                valueType == ChartValueType.Date)
            {
                // Set default format
                if (convertionFormat.Length == 0)
                {
                    convertionFormat = "{0:d}";
                    if (valueType == ChartValueType.DateTimeOffset)
                    {
                        convertionFormat += " +0";
                    }
                }

                // Convert date to string
                result = String.Format(CultureInfo.CurrentCulture, convertionFormat, DateTime.FromOADate(value));
            }
            else if (valueType == ChartValueType.Time)
            {
                // Set default format
                if (convertionFormat.Length == 0)
                {
                    convertionFormat = "{0:t}";
                }

                // Convert date to string
                result = String.Format(CultureInfo.CurrentCulture, convertionFormat, DateTime.FromOADate(value));
            }
            else
            {
                bool failedFlag = false;

                // Set default format
                if (convertionFormat.Length == 0)
                {
                    convertionFormat = "{0:G}";
                }

                try
                {
                    // Numeric value formatting
                    result = String.Format(CultureInfo.CurrentCulture, convertionFormat, value);
                }
                catch (FormatException)
                {
                    failedFlag = true;
                }

                // If numeric formatting failed try to format using decimal number
                if (failedFlag)
                {
                    failedFlag = false;
                    try
                    {
                        // Decimal value formatting
                        result = String.Format(CultureInfo.CurrentCulture, convertionFormat, (long)value);
                    }
                    catch (ArgumentNullException)
                    {
                        failedFlag = true;
                    }
                    catch (FormatException)
                    {
                        failedFlag = true;
                    }
                }

                // Return format string as result (literal) if all formatting methods failed
                if (failedFlag)
                {
                    result = format;
                }
            }

            // For the Reporting Services chart a special number formatting
            // handler may be set and used for all formatting needs.
            if (chart != null)
            {
                // Call number formatter
                FormatNumberEventArgs eventArguments = new FormatNumberEventArgs(value, format, valueType, result, objTag, elementType);
                chart.CallOnFormatNumber(obj, eventArguments);
                result = eventArguments.LocalizedValue;
            }

            return(result);
        }
Пример #8
0
 private void N2(object sender, FormatNumberEventArgs e)
 {
 }
Пример #9
0
 private void chart1_FormatNumber(object sender, FormatNumberEventArgs e)
 {
 }