diff --git a/SunnyUI.Demo/Bin/SunnyUI.Demo.exe b/SunnyUI.Demo/Bin/SunnyUI.Demo.exe index 96de5f9a..86301bca 100644 Binary files a/SunnyUI.Demo/Bin/SunnyUI.Demo.exe and b/SunnyUI.Demo/Bin/SunnyUI.Demo.exe differ diff --git a/SunnyUI.Demo/Bin/SunnyUI.dll b/SunnyUI.Demo/Bin/SunnyUI.dll index afdffd15..9d3e71d2 100644 Binary files a/SunnyUI.Demo/Bin/SunnyUI.dll and b/SunnyUI.Demo/Bin/SunnyUI.dll differ diff --git a/SunnyUI.Demo/Charts/FBarChart.cs b/SunnyUI.Demo/Charts/FBarChart.cs index 4376ba08..36953294 100644 --- a/SunnyUI.Demo/Charts/FBarChart.cs +++ b/SunnyUI.Demo/Charts/FBarChart.cs @@ -35,6 +35,9 @@ namespace Sunny.UI.Demo series.AddData(-1.1); series.AddData(-1.1); series.AddData(-1.1); + + //数据显示小数位数 + series.DecimalPlaces = 1; option.Series.Add(series); series = new UIBarSeries(); @@ -65,8 +68,9 @@ namespace Sunny.UI.Demo option.XAxis.AxisLabel.Angle = 60;//(0° ~ 90°) option.YAxis.Name = "数值"; - option.YAxis.AxisLabel.DecimalCount = 1; - option.YAxis.AxisLabel.AutoFormat = false; + + //坐标轴显示小数位数 + option.YAxis.AxisLabel.DecimalPlaces = 1; option.YAxisScaleLines.Add(new UIScaleLine() { Color = Color.Red, Name = "上限", Value = 12 }); option.YAxisScaleLines.Add(new UIScaleLine() { Color = Color.Gold, Name = "下限", Value = -20 }); diff --git a/SunnyUI.Demo/Charts/FDoughnutChart.cs b/SunnyUI.Demo/Charts/FDoughnutChart.cs index bd29caee..ce22f0bd 100644 --- a/SunnyUI.Demo/Charts/FDoughnutChart.cs +++ b/SunnyUI.Demo/Charts/FDoughnutChart.cs @@ -58,6 +58,9 @@ namespace Sunny.UI.Demo option.Series.Clear(); option.Series.Add(series); + //显示数据小数位数 + option.DecimalPlaces = 1; + //设置Option DoughnutChart.SetOption(option); uiSymbolButton2.Enabled = true; diff --git a/SunnyUI.Demo/Charts/FLineChart.Designer.cs b/SunnyUI.Demo/Charts/FLineChart.Designer.cs index 5dbd306d..e877f873 100644 --- a/SunnyUI.Demo/Charts/FLineChart.Designer.cs +++ b/SunnyUI.Demo/Charts/FLineChart.Designer.cs @@ -48,7 +48,6 @@ // this.uiSymbolButton1.Cursor = System.Windows.Forms.Cursors.Hand; this.uiSymbolButton1.Font = new System.Drawing.Font("微软雅黑", 12F); - this.uiSymbolButton1.IsScaled = false; this.uiSymbolButton1.Location = new System.Drawing.Point(348, 505); this.uiSymbolButton1.MinimumSize = new System.Drawing.Size(1, 1); this.uiSymbolButton1.Name = "uiSymbolButton1"; @@ -57,6 +56,8 @@ this.uiSymbolButton1.Symbol = 61953; this.uiSymbolButton1.TabIndex = 34; this.uiSymbolButton1.Text = "单Y轴"; + this.uiSymbolButton1.TipsFont = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.uiSymbolButton1.ZoomScaleRect = new System.Drawing.Rectangle(0, 0, 0, 0); this.uiSymbolButton1.Click += new System.EventHandler(this.uiSymbolButton1_Click); // // uiImageButton3 @@ -71,6 +72,7 @@ this.uiImageButton3.TabStop = false; this.uiImageButton3.Text = " Dark"; this.uiImageButton3.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + this.uiImageButton3.ZoomScaleRect = new System.Drawing.Rectangle(0, 0, 0, 0); this.uiImageButton3.Click += new System.EventHandler(this.uiImageButton3_Click); // // uiImageButton2 @@ -85,6 +87,7 @@ this.uiImageButton2.TabStop = false; this.uiImageButton2.Text = " Plain"; this.uiImageButton2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + this.uiImageButton2.ZoomScaleRect = new System.Drawing.Rectangle(0, 0, 0, 0); this.uiImageButton2.Click += new System.EventHandler(this.uiImageButton2_Click); // // uiImageButton1 @@ -99,14 +102,12 @@ this.uiImageButton1.TabStop = false; this.uiImageButton1.Text = " Default"; this.uiImageButton1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + this.uiImageButton1.ZoomScaleRect = new System.Drawing.Rectangle(0, 0, 0, 0); this.uiImageButton1.Click += new System.EventHandler(this.uiImageButton1_Click); // // LineChart // - this.LineChart.FillColor = System.Drawing.Color.FromArgb(((int)(((byte)(244)))), ((int)(((byte)(244)))), ((int)(((byte)(244))))); this.LineChart.Font = new System.Drawing.Font("微软雅黑", 12F); - this.LineChart.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(54)))), ((int)(((byte)(54)))), ((int)(((byte)(54))))); - this.LineChart.IsScaled = false; this.LineChart.LegendFont = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.LineChart.Location = new System.Drawing.Point(30, 55); this.LineChart.MinimumSize = new System.Drawing.Size(1, 1); @@ -115,13 +116,13 @@ this.LineChart.SubFont = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.LineChart.TabIndex = 35; this.LineChart.Text = "uiLineChart1"; + this.LineChart.ZoomScaleRect = new System.Drawing.Rectangle(0, 0, 0, 0); this.LineChart.PointValue += new Sunny.UI.UILineChart.OnPointValue(this.LineChart_PointValue); // // uiSymbolButton2 // this.uiSymbolButton2.Cursor = System.Windows.Forms.Cursors.Hand; this.uiSymbolButton2.Font = new System.Drawing.Font("微软雅黑", 12F); - this.uiSymbolButton2.IsScaled = false; this.uiSymbolButton2.Location = new System.Drawing.Point(560, 505); this.uiSymbolButton2.MinimumSize = new System.Drawing.Size(1, 1); this.uiSymbolButton2.Name = "uiSymbolButton2"; @@ -130,6 +131,8 @@ this.uiSymbolButton2.Symbol = 61463; this.uiSymbolButton2.TabIndex = 36; this.uiSymbolButton2.Text = "实时"; + this.uiSymbolButton2.TipsFont = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.uiSymbolButton2.ZoomScaleRect = new System.Drawing.Rectangle(0, 0, 0, 0); this.uiSymbolButton2.Click += new System.EventHandler(this.uiSymbolButton2_Click); // // timer1 @@ -140,7 +143,6 @@ // this.cbPoints.Cursor = System.Windows.Forms.Cursors.Hand; this.cbPoints.Font = new System.Drawing.Font("微软雅黑", 12F); - this.cbPoints.IsScaled = false; this.cbPoints.Location = new System.Drawing.Point(348, 538); this.cbPoints.MinimumSize = new System.Drawing.Size(1, 1); this.cbPoints.Name = "cbPoints"; @@ -148,13 +150,13 @@ this.cbPoints.Size = new System.Drawing.Size(95, 27); this.cbPoints.TabIndex = 37; this.cbPoints.Text = "只显示点"; + this.cbPoints.ZoomScaleRect = new System.Drawing.Rectangle(0, 0, 0, 0); this.cbPoints.CheckedChanged += new System.EventHandler(this.uiCheckBox1_CheckedChanged); // // cbContainsNan // this.cbContainsNan.Cursor = System.Windows.Forms.Cursors.Hand; this.cbContainsNan.Font = new System.Drawing.Font("微软雅黑", 12F); - this.cbContainsNan.IsScaled = false; this.cbContainsNan.Location = new System.Drawing.Point(571, 535); this.cbContainsNan.MinimumSize = new System.Drawing.Size(1, 1); this.cbContainsNan.Name = "cbContainsNan"; @@ -163,13 +165,13 @@ this.cbContainsNan.TabIndex = 38; this.cbContainsNan.Text = "包含Nan"; this.cbContainsNan.Visible = false; + this.cbContainsNan.ZoomScaleRect = new System.Drawing.Rectangle(0, 0, 0, 0); this.cbContainsNan.CheckedChanged += new System.EventHandler(this.uiCheckBox2_CheckedChanged); // // uiSymbolButton3 // this.uiSymbolButton3.Cursor = System.Windows.Forms.Cursors.Hand; this.uiSymbolButton3.Font = new System.Drawing.Font("微软雅黑", 12F); - this.uiSymbolButton3.IsScaled = false; this.uiSymbolButton3.Location = new System.Drawing.Point(454, 505); this.uiSymbolButton3.MinimumSize = new System.Drawing.Size(1, 1); this.uiSymbolButton3.Name = "uiSymbolButton3"; @@ -178,6 +180,8 @@ this.uiSymbolButton3.Symbol = 61953; this.uiSymbolButton3.TabIndex = 39; this.uiSymbolButton3.Text = "双Y轴"; + this.uiSymbolButton3.TipsFont = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.uiSymbolButton3.ZoomScaleRect = new System.Drawing.Rectangle(0, 0, 0, 0); this.uiSymbolButton3.Click += new System.EventHandler(this.uiSymbolButton3_Click_1); // // FLineChart diff --git a/SunnyUI.Demo/Charts/FLineChart.cs b/SunnyUI.Demo/Charts/FLineChart.cs index dd84911b..b4c1bb51 100644 --- a/SunnyUI.Demo/Charts/FLineChart.cs +++ b/SunnyUI.Demo/Charts/FLineChart.cs @@ -37,6 +37,8 @@ namespace Sunny.UI.Demo series.SymbolLineWidth = 2; series.SymbolColor = Color.Red; series.ShowLine = !cbPoints.Checked; + //数据点显示小数位数 + series.YAxisDecimalPlaces = 2; series = option.AddSeries(new UILineSeries("Line2", Color.Lime)); series.Add(dt.AddHours(3), 3.3); @@ -49,6 +51,8 @@ namespace Sunny.UI.Demo series.SymbolSize = 4; series.SymbolLineWidth = 2; series.ShowLine = !cbPoints.Checked; + //数据点显示小数位数 + series.YAxisDecimalPlaces = 1; option.GreaterWarningArea = new UILineWarningArea(3.5); option.LessWarningArea = new UILineWarningArea(2.2, Color.Gold); @@ -58,10 +62,11 @@ namespace Sunny.UI.Demo option.XAxis.Name = "日期"; option.YAxis.Name = "数值"; + //X轴坐标轴显示格式化 option.XAxis.AxisLabel.DateTimeFormat = "yyyy-MM-dd HH:mm"; - option.XAxis.AxisLabel.AutoFormat = false; - option.YAxis.AxisLabel.DecimalCount = 1; - option.YAxis.AxisLabel.AutoFormat = false; + + //Y轴坐标轴显示小数位数 + option.YAxis.AxisLabel.DecimalPlaces = 1; option.XAxisScaleLines.Add(new UIScaleLine(dt.AddHours(3).DateTimeString(), dt.AddHours(3), Color.Red)); option.XAxisScaleLines.Add(new UIScaleLine(dt.AddHours(6).DateTimeString(), dt.AddHours(6), Color.Red)); @@ -91,7 +96,7 @@ namespace Sunny.UI.Demo StringBuilder sb = new StringBuilder(); foreach (var point in points) { - sb.Append(point.Name + ", " + point.Index + ", " + point.X + ", " + point.Y); + sb.Append(point.Series.Name + ", " + point.Index + ", " + point.X + ", " + point.Y); } Console.WriteLine(sb.ToString()); @@ -107,10 +112,9 @@ namespace Sunny.UI.Demo option.Title.SubText = "LineChart"; var series = option.AddSeries(new UILineSeries("Line1")); - option.XAxis.AxisLabel.DecimalCount = 1; - option.XAxis.AxisLabel.AutoFormat = false; - option.YAxis.AxisLabel.DecimalCount = 1; - option.YAxis.AxisLabel.AutoFormat = false; + //坐标轴显示小数位数 + option.XAxis.AxisLabel.DecimalPlaces = 1; + option.YAxis.AxisLabel.DecimalPlaces = 1; LineChart.SetOption(option); timer1.Start(); } @@ -125,10 +129,7 @@ namespace Sunny.UI.Demo if (index > 50) { - LineChart.Option.XAxis.Max = index + 20; - LineChart.Option.XAxis.MaxAuto = false; - LineChart.Option.XAxis.Min = index - 50; - LineChart.Option.XAxis.MinAuto = false; + LineChart.Option.XAxis.SetRange(index - 50, index + 20); } LineChart.Refresh(); @@ -164,9 +165,7 @@ namespace Sunny.UI.Demo option.XAxis.Name = "日期"; option.YAxis.Name = "数值"; option.XAxis.AxisLabel.DateTimeFormat = "yyyy-MM-dd HH:mm"; - option.XAxis.AxisLabel.AutoFormat = false; - option.YAxis.AxisLabel.DecimalCount = 1; - option.YAxis.AxisLabel.AutoFormat = false; + option.YAxis.AxisLabel.DecimalPlaces = 1; LineChart.SetOption(option); } @@ -213,11 +212,6 @@ namespace Sunny.UI.Demo option.YAxis.Name = "数值"; option.Y2Axis.Name = "数值"; - option.YAxis.AxisLabel.DecimalCount = 1; - option.YAxis.AxisLabel.AutoFormat = false; - option.Y2Axis.AxisLabel.DecimalCount = 1; - option.Y2Axis.AxisLabel.AutoFormat = false; - option.YAxisScaleLines.Add(new UIScaleLine() { Color = Color.Red, Name = "上限", Value = 3.5 }); option.Y2AxisScaleLines.Add(new UIScaleLine() { Color = Color.Gold, Name = "下限", Value = 12, DashDot = true }); diff --git a/SunnyUI.Demo/Charts/FLineChart.resx b/SunnyUI.Demo/Charts/FLineChart.resx index 3a9e5f0a..6deb328c 100644 --- a/SunnyUI.Demo/Charts/FLineChart.resx +++ b/SunnyUI.Demo/Charts/FLineChart.resx @@ -121,6 +121,6 @@ 17, 17 - 25 + 66 \ No newline at end of file diff --git a/SunnyUI.Demo/Charts/FPieChart.cs b/SunnyUI.Demo/Charts/FPieChart.cs index fffbd79f..fb539e4d 100644 --- a/SunnyUI.Demo/Charts/FPieChart.cs +++ b/SunnyUI.Demo/Charts/FPieChart.cs @@ -71,6 +71,9 @@ namespace Sunny.UI.Demo option.Series.Clear(); option.Series.Add(series); + //显示数据小数位数 + option.DecimalPlaces = 1; + //设置Option PieChart.SetOption(option); diff --git a/SunnyUI.Demo/Controls/FAvatar.Designer.cs b/SunnyUI.Demo/Controls/FAvatar.Designer.cs index 44813136..f3fa4133 100644 --- a/SunnyUI.Demo/Controls/FAvatar.Designer.cs +++ b/SunnyUI.Demo/Controls/FAvatar.Designer.cs @@ -273,7 +273,6 @@ namespace Sunny.UI.Demo this.uiGifAvatar1.Location = new System.Drawing.Point(30, 340); this.uiGifAvatar1.MinimumSize = new System.Drawing.Size(1, 1); this.uiGifAvatar1.Name = "uiGifAvatar1"; - this.uiGifAvatar1.ShowScore = true; this.uiGifAvatar1.Size = new System.Drawing.Size(128, 128); this.uiGifAvatar1.TabIndex = 38; this.uiGifAvatar1.Text = "uiGifAvatar1"; diff --git a/SunnyUI.Demo/Properties/AssemblyInfo.cs b/SunnyUI.Demo/Properties/AssemblyInfo.cs index d02c538f..660d9fcc 100644 --- a/SunnyUI.Demo/Properties/AssemblyInfo.cs +++ b/SunnyUI.Demo/Properties/AssemblyInfo.cs @@ -31,5 +31,5 @@ using System.Runtime.InteropServices; //可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值 //通过使用 "*",如下所示: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("3.2.2.0")] -[assembly: AssemblyFileVersion("3.2.2.0")] +[assembly: AssemblyVersion("3.2.3.0")] +[assembly: AssemblyFileVersion("3.2.3.0")] diff --git a/SunnyUI.Demo/SunnyUI.Demo.csproj b/SunnyUI.Demo/SunnyUI.Demo.csproj index f159de97..4f43d462 100644 --- a/SunnyUI.Demo/SunnyUI.Demo.csproj +++ b/SunnyUI.Demo/SunnyUI.Demo.csproj @@ -38,8 +38,8 @@ app.manifest - - ..\packages\SunnyUI.3.2.2\lib\net40\SunnyUI.dll + + ..\packages\SunnyUI.3.2.3\lib\net40\SunnyUI.dll ..\packages\SunnyUI.Common.3.2.0\lib\net40\SunnyUI.Common.dll diff --git a/SunnyUI.Demo/packages.config b/SunnyUI.Demo/packages.config index 790396df..964fd2b6 100644 --- a/SunnyUI.Demo/packages.config +++ b/SunnyUI.Demo/packages.config @@ -1,5 +1,5 @@  - + \ No newline at end of file diff --git a/SunnyUI/Controls/UIGlobal.cs b/SunnyUI/Controls/UIGlobal.cs index ec23ad4a..b31e1f30 100644 --- a/SunnyUI/Controls/UIGlobal.cs +++ b/SunnyUI/Controls/UIGlobal.cs @@ -31,7 +31,7 @@ namespace Sunny.UI /// /// 版本 /// - public const string Version = "SunnyUI.Net V3.2.2"; + public const string Version = "SunnyUI.Net V3.2.3"; public const int EditorMinHeight = 20; public const int EditorMaxHeight = 60; diff --git a/SunnyUI/Controls/UIKnobControl.cs b/SunnyUI/Controls/UIKnobControl.cs index b64152cf..4ea8cbd4 100644 --- a/SunnyUI/Controls/UIKnobControl.cs +++ b/SunnyUI/Controls/UIKnobControl.cs @@ -11,7 +11,7 @@ * If you use this code, please keep this note. * 如果您使用此代码,请保留此说明。 ****************************************************************************** - * 文件名称: UIKnobControl.cs + * 文件名称: UIKnob.cs * 文件说明: C# Knob Control using Windows Forms * 文件作者: Fabrice Lacharme * 开源协议: CPOL @@ -93,7 +93,7 @@ namespace Sunny.UI /// /// Summary description for KnobControl. /// - public class UIKnobControl : UserControl, IStyleInterface, IZoomScale + public class UIKnob : UserControl, IStyleInterface, IZoomScale { /// /// Required designer variable. @@ -552,7 +552,7 @@ namespace Sunny.UI #endregion properties - public UIKnobControl() + public UIKnob() { // This call is required by the Windows.Forms Form Designer. DottedPen = new Pen(GetDarkColor(this.BackColor, 40)) @@ -688,7 +688,7 @@ namespace Sunny.UI /// Mouse up event: display new value /// /// - protected override void OnMouseUp(MouseEventArgs e) + protected override void OnMouseUp(MouseEventArgs e) { if (IsPointinRectangle(new Point(e.X, e.Y), rKnob)) { @@ -712,7 +712,7 @@ namespace Sunny.UI /// Mouse move event: drag the pointer to the mouse position /// /// - protected override void OnMouseMove(MouseEventArgs e) + protected override void OnMouseMove(MouseEventArgs e) { //-------------------------------------- // Following Handles Knob Rotating diff --git a/SunnyUI/Controls/UIKnobControl.resx b/SunnyUI/Controls/UIKnobControl.resx new file mode 100644 index 00000000..1af7de15 --- /dev/null +++ b/SunnyUI/Controls/UIKnobControl.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/SunnyUI/SunnyUI.csproj b/SunnyUI/SunnyUI.csproj index d6620d84..a7353f22 100644 --- a/SunnyUI/SunnyUI.csproj +++ b/SunnyUI/SunnyUI.csproj @@ -1,7 +1,7 @@  - net472;net40 + net6.0-windows;net472;net40 8.0 {AB1CB247-E20B-4CBE-B269-570ADDD96C53} true @@ -9,7 +9,7 @@ SunnyUI.Net 是基于.Net Framework 4.0~4.8、.Net 6 框架的 C# WinForm 开源控件库、工具类库、扩展类库、多页面开发框架。 CopyRight © SunnyUI.Net 2012-2022 GPL-3.0-only - 3.2.2 + 3.2.3 ShenYonghua SunnyUI.Net SunnyUI @@ -17,7 +17,7 @@ https://gitee.com/yhuse/SunnyUI False SunnyUI.png - False + True D:\MyDocuments\SunnyUI.pfx False True diff --git a/SunnyUI/Win32/Win32.User.cs b/SunnyUI/Win32/Win32.User.cs index e4b8ac74..6b570bcc 100644 --- a/SunnyUI/Win32/Win32.User.cs +++ b/SunnyUI/Win32/Win32.User.cs @@ -635,7 +635,7 @@ namespace Sunny.UI.Win32 [DllImport("user32")] public static extern int CreatePopupMenu(); //[DllImport("user32")] public static extern int CreateWindowEx(int dwExStyle, string lpClassName, string lpWindowName, int dwStyle, int x, int y, int nWidth, int nHeight, HWND hwndParent, HANDLE hMenu, HANDLE hInstance, IntPtr lpParam); [DllImport("user32.dll", CharSet = CharSet.Unicode)] - public static extern IntPtr CreateWindowEx(int dwExStyle, string lpszClassName, string lpszWindowName, int style, int x, int y, int width, int height, IntPtr hWndParent, IntPtr hMenu, IntPtr hInst, [MarshalAs(UnmanagedType.AsAny)] object pvParam); + public static extern IntPtr CreateWindowEx(int dwExStyle, string lpszClassName, string lpszWindowName, int style, int x, int y, int width, int height, IntPtr hWndParent, IntPtr hMenu, IntPtr hInst, object pvParam); [DllImport("user32")] public static extern int DdeAbandonTransaction(int idInst, HANDLE hConv, int idTransaction); [DllImport("user32")] public static extern int DdeAccessData(HANDLE hData, ref int pcbDataSize); [DllImport("user32")] public static extern int DdeAddData(HANDLE hData, Byte pSrc, int cb, int cbOff);