add:增加文档和上位机
This commit is contained in:
1
上位机/YKC/.vs/YKC.csproj.dtbcache.json
Normal file
1
上位机/YKC/.vs/YKC.csproj.dtbcache.json
Normal file
@@ -0,0 +1 @@
|
||||
{"RootPath":"C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC","ProjectFileName":"YKC.csproj","Configuration":"Debug|AnyCPU","FrameworkPath":"","Sources":[{"SourceFile":"App.xaml.cs"},{"SourceFile":"MainWindow.xaml.cs"},{"SourceFile":"Properties\\AssemblyInfo.cs"},{"SourceFile":"Properties\\Resources.Designer.cs"},{"SourceFile":"Properties\\Settings.Designer.cs"},{"SourceFile":"obj\\Debug\\.NETFramework,Version=v4.7.2.AssemblyAttributes.cs"},{"SourceFile":"C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\obj\\Debug\\MainWindow.g.cs"},{"SourceFile":"C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\obj\\Debug\\App.g.cs"}],"References":[{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\Microsoft.CSharp.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\mscorlib.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\PresentationCore.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\PresentationFramework.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Core.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Data.DataSetExtensions.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Data.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Net.Http.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Xaml.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Xml.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Xml.Linq.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\WindowsBase.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""}],"Analyzers":[],"Outputs":[{"OutputItemFullPath":"C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\bin\\Debug\\YKC.exe","OutputItemRelativePath":"YKC.exe"},{"OutputItemFullPath":"","OutputItemRelativePath":""}],"CopyToOutputEntries":[]}
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
上位机/YKC/.vs/YKC.slnx/v18/.suo
Normal file
BIN
上位机/YKC/.vs/YKC.slnx/v18/.suo
Normal file
Binary file not shown.
228
上位机/YKC/.vs/YKC.slnx/v18/DocumentLayout.backup.json
Normal file
228
上位机/YKC/.vs/YKC.slnx/v18/DocumentLayout.backup.json
Normal file
@@ -0,0 +1,228 @@
|
||||
{
|
||||
"Version": 1,
|
||||
"WorkspaceRootPath": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\",
|
||||
"Documents": [
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|c:\\users\\administrator\\pycharmprojects\\pythonproject\\c#\\ykc\\pages\\realtimepage.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:pages\\realtimepage.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|c:\\users\\administrator\\pycharmprojects\\pythonproject\\c#\\ykc\\pages\\gatewaypage.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:pages\\gatewaypage.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|c:\\users\\administrator\\pycharmprojects\\pythonproject\\c#\\ykc\\pages\\realtimepage.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:pages\\realtimepage.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|c:\\users\\administrator\\pycharmprojects\\pythonproject\\c#\\ykc\\pages\\gatewaypage.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:pages\\gatewaypage.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|c:\\users\\administrator\\pycharmprojects\\pythonproject\\c#\\ykc\\pages\\dashboardpage.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:pages\\dashboardpage.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|c:\\users\\administrator\\pycharmprojects\\pythonproject\\c#\\ykc\\pages\\chargerpage.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:pages\\chargerpage.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|c:\\users\\administrator\\pycharmprojects\\pythonproject\\c#\\ykc\\mainwindow.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:mainwindow.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\Administrator\\AppData\\Local\\Temp\\.vsdbgsrc\\3714f74b82eacc6cf8dcf1e32980b0908d4f8b447d25d4eb08ff1424a7b57c02\\ResourcePart.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\app.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:app.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\mainwindow.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:mainwindow.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\app.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:app.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\app.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:app.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{00000000-0000-0000-0000-000000000000}|\u003CSolution\u003E|YKC||{04B8AB82-A572-4FEF-95CE-5222444B6B64}|"
|
||||
}
|
||||
],
|
||||
"DocumentGroupContainers": [
|
||||
{
|
||||
"Orientation": 0,
|
||||
"VerticalTabListWidth": 256,
|
||||
"DocumentGroups": [
|
||||
{
|
||||
"DockedWidth": 200,
|
||||
"SelectedChildIndex": 0,
|
||||
"Children": [
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 0,
|
||||
"Title": "RealtimePage.xaml",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\RealtimePage.xaml",
|
||||
"RelativeDocumentMoniker": "Pages\\RealtimePage.xaml",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\RealtimePage.xaml",
|
||||
"RelativeToolTip": "Pages\\RealtimePage.xaml",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
|
||||
"WhenOpened": "2026-05-20T03:56:55.66Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 2,
|
||||
"Title": "RealtimePage.xaml.cs",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\RealtimePage.xaml.cs",
|
||||
"RelativeDocumentMoniker": "Pages\\RealtimePage.xaml.cs",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\RealtimePage.xaml.cs",
|
||||
"RelativeToolTip": "Pages\\RealtimePage.xaml.cs",
|
||||
"ViewState": "AgIAAFcAAAAAAAAAAAAowH8AAAAQAAAAAAAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2026-05-20T03:48:04.174Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 1,
|
||||
"Title": "GatewayPage.xaml.cs",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\GatewayPage.xaml.cs",
|
||||
"RelativeDocumentMoniker": "Pages\\GatewayPage.xaml.cs",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\GatewayPage.xaml.cs",
|
||||
"RelativeToolTip": "Pages\\GatewayPage.xaml.cs",
|
||||
"ViewState": "AgIAAAAAAAAAAAAAAADwvwAAAAAAAAAAAAAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2026-05-20T03:56:52.729Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 4,
|
||||
"Title": "DashboardPage.xaml",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\DashboardPage.xaml",
|
||||
"RelativeDocumentMoniker": "Pages\\DashboardPage.xaml",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\DashboardPage.xaml",
|
||||
"RelativeToolTip": "Pages\\DashboardPage.xaml",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
|
||||
"WhenOpened": "2026-05-20T03:55:04.048Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 5,
|
||||
"Title": "ChargerPage.xaml",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\ChargerPage.xaml",
|
||||
"RelativeDocumentMoniker": "Pages\\ChargerPage.xaml",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\ChargerPage.xaml",
|
||||
"RelativeToolTip": "Pages\\ChargerPage.xaml",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
|
||||
"WhenOpened": "2026-05-20T03:55:01.467Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 9,
|
||||
"Title": "MainWindow.xaml.cs",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\MainWindow.xaml.cs",
|
||||
"RelativeDocumentMoniker": "MainWindow.xaml.cs",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\MainWindow.xaml.cs",
|
||||
"RelativeToolTip": "MainWindow.xaml.cs",
|
||||
"ViewState": "AgIAADMAAAAAAAAAAAAewEoAAAAMAAAAAAAAAA==",
|
||||
"Icon": "00000000-0000-0000-0000-000000000000.000000|iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJ7SURBVDhP7ZQ9aBNhGMef9y7t2eH0TOPHnbnzzmDjkpTqNSEdShDBpRbBQbEI/bCSRVA7iFWk1OpS0CGDH5OlgQgZihRioTgU0VzTEKhSTeLg2aYBLUIgzfUj17wuXptcQUFdBH/j83//P953eF4AE0eGZljXkLL4ZErFsY9LA\u002Bb8VyDz4NGUyiKARDJb5A7srMkc27Wcjr98DpFIBLxeL/A8Hx4cHAybewbkwZuvB9aPXvDrcqcfPJ3\u002BN2rBX1dDtMTUZeqbptfr\u002BgYqZd/G5ubmzrAs66Ioql6W5dL09PQ7swwAgGRaL/YVS5jTcZkDBBwug50kCelLoWQBQIAttbHJh7f6McadVqs1RdP0HoRQk8/n\u002B\u002BR0OnOzs7N6pXDbk1\u002B8/8oifSMxMrPECUzt8mmXdezsCfk6QRAJh8Nxw\u002BPxHNI07TIA6ABwslwufwgGg2tGn6jWAdyb\u002BAx3J7PgE2k43rD7Md5Re8XIenp6HnR3dwMAXAWAeoTQBEKotbJfdcPh4eHmdUz0TerusXMtDVoTX5f2OvZment7WYvFklhZWeHm5\u002BczuVwuzzCM50etXVGUccNh2dIBKIqyjyCI1v3kzLVA/7OcMW9sbCwUi8X70WiUVlUVAABWV1dfYYwvEcS2R24hSVKbKIo5nuc5c2ZGEARWFMVFSZJOVc5/ov89/gv/nH9MSFEU2Gw2aygUeppOp41N2EYqlWoOhUIjgiBYGYapyqpWLxAItJEkOW632yEej4eTyWSmMjdwu92HZVk\u002Bn8/nQdf19mAwuLl6VcLR0dFmTdNuRyIRWFhYgLW1zU\u002BkCpIkwWazQVdXF9A0faejoyNuPvPX\u002BA5Fb\u002BAHZWstowAAAABJRU5ErkJggg==",
|
||||
"WhenOpened": "2026-05-13T09:04:45.364Z"
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 11,
|
||||
"Title": "App.xaml.cs",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\App.xaml.cs",
|
||||
"RelativeDocumentMoniker": "App.xaml.cs",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\App.xaml.cs",
|
||||
"RelativeToolTip": "App.xaml.cs",
|
||||
"ViewState": "AgIAAAAAAAAAAAAAAADwvwAAAAAAAAAAAAAAAA==",
|
||||
"Icon": "00000000-0000-0000-0000-000000000000.000000|iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJ7SURBVDhP7ZQ9aBNhGMef9y7t2eH0TOPHnbnzzmDjkpTqNSEdShDBpRbBQbEI/bCSRVA7iFWk1OpS0CGDH5OlgQgZihRioTgU0VzTEKhSTeLg2aYBLUIgzfUj17wuXptcQUFdBH/j83//P953eF4AE0eGZljXkLL4ZErFsY9LA\u002Bb8VyDz4NGUyiKARDJb5A7srMkc27Wcjr98DpFIBLxeL/A8Hx4cHAybewbkwZuvB9aPXvDrcqcfPJ3\u002BN2rBX1dDtMTUZeqbptfr\u002BgYqZd/G5ubmzrAs66Ioql6W5dL09PQ7swwAgGRaL/YVS5jTcZkDBBwug50kCelLoWQBQIAttbHJh7f6McadVqs1RdP0HoRQk8/n\u002B\u002BR0OnOzs7N6pXDbk1\u002B8/8oifSMxMrPECUzt8mmXdezsCfk6QRAJh8Nxw\u002BPxHNI07TIA6ABwslwufwgGg2tGn6jWAdyb\u002BAx3J7PgE2k43rD7Md5Re8XIenp6HnR3dwMAXAWAeoTQBEKotbJfdcPh4eHmdUz0TerusXMtDVoTX5f2OvZment7WYvFklhZWeHm5\u002BczuVwuzzCM50etXVGUccNh2dIBKIqyjyCI1v3kzLVA/7OcMW9sbCwUi8X70WiUVlUVAABWV1dfYYwvEcS2R24hSVKbKIo5nuc5c2ZGEARWFMVFSZJOVc5/ov89/gv/nH9MSFEU2Gw2aygUeppOp41N2EYqlWoOhUIjgiBYGYapyqpWLxAItJEkOW632yEej4eTyWSmMjdwu92HZVk\u002Bn8/nQdf19mAwuLl6VcLR0dFmTdNuRyIRWFhYgLW1zU\u002BkCpIkwWazQVdXF9A0faejoyNuPvPX\u002BA5Fb\u002BAHZWstowAAAABJRU5ErkJggg==",
|
||||
"WhenOpened": "2026-05-13T09:10:18.727Z"
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 10,
|
||||
"Title": "App.xaml",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\App.xaml",
|
||||
"RelativeDocumentMoniker": "App.xaml",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\App.xaml",
|
||||
"RelativeToolTip": "App.xaml",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
|
||||
"WhenOpened": "2026-05-13T09:08:55.359Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 6,
|
||||
"Title": "MainWindow.xaml",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\MainWindow.xaml",
|
||||
"RelativeDocumentMoniker": "MainWindow.xaml",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\MainWindow.xaml",
|
||||
"RelativeToolTip": "MainWindow.xaml",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
|
||||
"WhenOpened": "2026-05-13T09:04:45.868Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 3,
|
||||
"Title": "GatewayPage.xaml",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\GatewayPage.xaml",
|
||||
"RelativeDocumentMoniker": "Pages\\GatewayPage.xaml",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\GatewayPage.xaml",
|
||||
"RelativeToolTip": "Pages\\GatewayPage.xaml",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
|
||||
"WhenOpened": "2026-05-20T03:55:06.415Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 12,
|
||||
"Title": "YKC",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\YKC.csproj",
|
||||
"RelativeDocumentMoniker": "YKC.csproj",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\YKC.csproj",
|
||||
"RelativeToolTip": "YKC.csproj",
|
||||
"Icon": "00000000-0000-0000-0000-000000000000.000000|iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAALUSURBVDhP5ZRfSFNRHMe/5267zrur003TDJrTQJx/yGHRCMFAM3CTRHqoJ6EyiHyIyDdBHwoSRz340OpFihYMwzCD6GnkSOthD7aFuzhMJMUY5vXavNe7u9NLylwpPQZ94Lz8fr/P9xwOhwP8dxAA8Pl8J2ZmZkqmp6ehKEr2zIF0dnbCbrcLvb29AgDoAUCSpH69Xu/heV6RZXktW/oThBCd2Wy2Ukp1siwPAhgAAAYARkdHUVxcDK/XO6VpWuPfrK6urraRkZGEKIoIBAJ7d7PZbBPt7e3\u002BWCx2cm9nfwRByBEEodXlcn2orKwc2KkT/AoEEO5\u002B2u1PqslL/rknaDl6FscKKoL9TYNBR8DBM5J2jdGTV9o2LWOAsk9XY/5Md3FxcQAAdABQUFBwEcCK5Uy\u002BIqUkn8VoaTYZuOat1NbidlvqM01uuxVNvbMp/1BSVG2hhLQfOV\u002B6kNtpWkYQFwCsiKIYxM4d7jC\u002B8BKhr1PpW87b3yilK1PL7ySqqvVpiuHvypp5U5VurCtih7S9UQ9Kh/NSeeZMH9mBALCurCfG4i/OMZqhUaV4tMEkQ0m62Zam6QQFuQkCn6IpU5Tq2yLmSCLb/y2QZ03mjnLPPU2vPmQJcfOUr\u002BNgGiJgzCD0Oig8rI6tA9GGHKLj4BO6Slw4XtSQ8/rLZCtD4XFYaqp0KU0EQ2bzWF7NYXLinIFbztVxIkh6ViOamukjO/DU4dOr1ZbqyTEhMElBJmsKa4XZnjmBUP3dPEP\u002BeKmx5IGVLXzMs6Znkcsxb\u002BxKTMr0dykvL59oaGgYjkQiluzeflBKmfn5\u002BUNVVVVvbTbb7jtkAIDjOLjd7h6WZe/vsQ4gHo8XaZr2pra2timzTgCgr69vQhRFz9LS0mo0Gv2YObAfHMcZnU5nk9VqNRoMhkGv1zuAnc/Bbrc/D4VC4Wg0mu3tiyzLCIfD791uNyoqKoLZ/X\u002BXn25ERIg8ycqdAAAAAElFTkSuQmCC",
|
||||
"WhenOpened": "2026-05-13T09:08:51.991Z"
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 8,
|
||||
"Title": "App.config",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\App.config",
|
||||
"RelativeDocumentMoniker": "App.config",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\App.config",
|
||||
"RelativeToolTip": "App.config",
|
||||
"ViewState": "AgIAAAAAAAAAAAAAAADwvwUAAAAQAAAAAAAAAA==",
|
||||
"Icon": "00000000-0000-0000-0000-000000000000.000000|iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAOhSURBVDhPrZRPSCNXHMe/LxNjTbquSYiLSYwV/1MwEEwFIWsOBQ/\u002BxS6ElUV6qiIG3ZNQSrGswQotu4i3QqkHXTCIYbeHFi9u2Wo1YhSNh7mkQaNpzWSMzDATNXm9OKIj2B76gXd53\u002B/vw\u002BM9eMD/DFFvzM3NGQG8DAaDpv39fWSz2Vu50\u002BlEY2NjeGJi4sWt4ApGveFwOIyJRGLK4XA0GY3G41gs9geA46vltVgsLSaTydbc3Fzo8Xj2VldXz2/O3zmhy\u002BUqA7A5ODiY8Hq9r2pra\u002BeVrKKi4k1lZWWd0\u002BnMAKgC8JxS\u002Buv09PRfSkdzbboilUohnU5jcnLyxU2ZQiaTeVtWVvYdpfSSEPIjIaRtaGjoQyW/I/w3Ojs7v\u002Bjr6/uMENJGKU0BeKnVageUXHu7DgQCAVBKAQD9/f23svb2diQSiQfDw8Ot0WjUaDKZHjIM8wGl9IHSuX6UcDjsbWpq\u002BnxmZsZrtVpbCgoKCn0\u002BH7e0tPSn0nny5Alisdje1tbWZj6fPxBF8XdBEKyCIOxlMpkV3HyUcDjcF4lERoPBoJvnebhcLpSXl8\u002BXlpa\u002BGhgYCCs9NRUVFW8AbMXj8XEA0ITD4TKWZQvdbve8wWD4sqen5\u002B\u002BLi4vc8vIydnd3\u002BwRB\u002BFotuQ8NIWQzk8k8BoDz8/P3sViszWKxpPR6PaLRKBYWFtQz98Kk0\u002Bnvj46O6rq7u8Xe3t6Cqqqqb1dWVmp5ntfKsgxJklie51\u002BrBxVKSkqeAjhW7pBhGGZclmVbKpUyb29vf3xwcNCzs7OjFUURVwWW47j/LNQ2NDSAZVkwDONNJpM4OTlBNpsFpRRarRZFRUWPRkdHP\u002BV5/v3s7KysFqrReL3eY6vVmhVFEYlEArIsgxACQgguLy\u002Bh0\u002BnckiTNGQyGer/fX6gWqNHkcrmmjo6O31pbW1FcXAyNRgOz2QydTgcA4DgOa2tr5lwu9wsh5LFaoEbj9/uP9Hr9VzqdrosQ0kUp7WIYpsvj8WzU1NQgn89DEAQmEok84jhuYmRk5CkAxONxI8uyP7W0tHxiMpmuhQwAhEKhxMbGBptMJtnT01P28PCQ9fl8IqXUrNFoPuI4DqIoglJqOzs728vn80ehUOi5LMvP9Hq9yW63v1tfX1/BfZ/D2NjY6\u002Brq6h/q6\u002BvDdrsdDMNAkiQIggAAD3mer1tcXHxnMBh\u002BdrvdrDJ35z9UMzU11SFJ0ttgMAi32w2bzfZNIBAYV/cU/gFl85csP2dGWAAAAABJRU5ErkJggg==",
|
||||
"WhenOpened": "2026-05-13T09:08:54.548Z"
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 7,
|
||||
"Title": "ResourcePart.cs",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\AppData\\Local\\Temp\\.vsdbgsrc\\3714f74b82eacc6cf8dcf1e32980b0908d4f8b447d25d4eb08ff1424a7b57c02\\ResourcePart.cs",
|
||||
"RelativeDocumentMoniker": "..\\..\\..\\..\\AppData\\Local\\Temp\\.vsdbgsrc\\3714f74b82eacc6cf8dcf1e32980b0908d4f8b447d25d4eb08ff1424a7b57c02\\ResourcePart.cs",
|
||||
"ToolTip": "C:\\Users\\Administrator\\AppData\\Local\\Temp\\.vsdbgsrc\\3714f74b82eacc6cf8dcf1e32980b0908d4f8b447d25d4eb08ff1424a7b57c02\\ResourcePart.cs [\u53EA\u8BFB]",
|
||||
"RelativeToolTip": "..\\..\\..\\..\\AppData\\Local\\Temp\\.vsdbgsrc\\3714f74b82eacc6cf8dcf1e32980b0908d4f8b447d25d4eb08ff1424a7b57c02\\ResourcePart.cs [\u53EA\u8BFB]",
|
||||
"ViewState": "AgIAABMAAAAAAAAAAAAowCcAAAADAAAAAQAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2026-05-13T09:19:37.213Z",
|
||||
"EditorCaption": " [\u53EA\u8BFB]"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
228
上位机/YKC/.vs/YKC.slnx/v18/DocumentLayout.json
Normal file
228
上位机/YKC/.vs/YKC.slnx/v18/DocumentLayout.json
Normal file
@@ -0,0 +1,228 @@
|
||||
{
|
||||
"Version": 1,
|
||||
"WorkspaceRootPath": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\",
|
||||
"Documents": [
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|c:\\users\\administrator\\pycharmprojects\\pythonproject\\c#\\ykc\\pages\\realtimepage.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:pages\\realtimepage.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|c:\\users\\administrator\\pycharmprojects\\pythonproject\\c#\\ykc\\pages\\gatewaypage.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:pages\\gatewaypage.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|c:\\users\\administrator\\pycharmprojects\\pythonproject\\c#\\ykc\\pages\\realtimepage.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:pages\\realtimepage.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|c:\\users\\administrator\\pycharmprojects\\pythonproject\\c#\\ykc\\pages\\gatewaypage.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:pages\\gatewaypage.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|c:\\users\\administrator\\pycharmprojects\\pythonproject\\c#\\ykc\\pages\\dashboardpage.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:pages\\dashboardpage.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|c:\\users\\administrator\\pycharmprojects\\pythonproject\\c#\\ykc\\pages\\chargerpage.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:pages\\chargerpage.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|c:\\users\\administrator\\pycharmprojects\\pythonproject\\c#\\ykc\\mainwindow.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:mainwindow.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\Administrator\\AppData\\Local\\Temp\\.vsdbgsrc\\3714f74b82eacc6cf8dcf1e32980b0908d4f8b447d25d4eb08ff1424a7b57c02\\ResourcePart.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\app.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:app.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\mainwindow.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:mainwindow.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\app.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:app.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\app.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}|YKC.csproj|solutionrelative:app.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{00000000-0000-0000-0000-000000000000}|\u003CSolution\u003E|YKC||{04B8AB82-A572-4FEF-95CE-5222444B6B64}|"
|
||||
}
|
||||
],
|
||||
"DocumentGroupContainers": [
|
||||
{
|
||||
"Orientation": 0,
|
||||
"VerticalTabListWidth": 256,
|
||||
"DocumentGroups": [
|
||||
{
|
||||
"DockedWidth": 200,
|
||||
"SelectedChildIndex": 0,
|
||||
"Children": [
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 0,
|
||||
"Title": "RealtimePage.xaml",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\RealtimePage.xaml",
|
||||
"RelativeDocumentMoniker": "Pages\\RealtimePage.xaml",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\RealtimePage.xaml",
|
||||
"RelativeToolTip": "Pages\\RealtimePage.xaml",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
|
||||
"WhenOpened": "2026-05-20T03:56:55.66Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 2,
|
||||
"Title": "RealtimePage.xaml.cs",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\RealtimePage.xaml.cs",
|
||||
"RelativeDocumentMoniker": "Pages\\RealtimePage.xaml.cs",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\RealtimePage.xaml.cs",
|
||||
"RelativeToolTip": "Pages\\RealtimePage.xaml.cs",
|
||||
"ViewState": "AgIAAFcAAAAAAAAAAAAowH8AAAAQAAAAAAAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2026-05-20T03:48:04.174Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 1,
|
||||
"Title": "GatewayPage.xaml.cs",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\GatewayPage.xaml.cs",
|
||||
"RelativeDocumentMoniker": "Pages\\GatewayPage.xaml.cs",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\GatewayPage.xaml.cs",
|
||||
"RelativeToolTip": "Pages\\GatewayPage.xaml.cs",
|
||||
"ViewState": "AgIAAAAAAAAAAAAAAADwvwAAAAAAAAAAAAAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2026-05-20T03:56:52.729Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 4,
|
||||
"Title": "DashboardPage.xaml",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\DashboardPage.xaml",
|
||||
"RelativeDocumentMoniker": "Pages\\DashboardPage.xaml",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\DashboardPage.xaml",
|
||||
"RelativeToolTip": "Pages\\DashboardPage.xaml",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
|
||||
"WhenOpened": "2026-05-20T03:55:04.048Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 5,
|
||||
"Title": "ChargerPage.xaml",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\ChargerPage.xaml",
|
||||
"RelativeDocumentMoniker": "Pages\\ChargerPage.xaml",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\ChargerPage.xaml",
|
||||
"RelativeToolTip": "Pages\\ChargerPage.xaml",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
|
||||
"WhenOpened": "2026-05-20T03:55:01.467Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 9,
|
||||
"Title": "MainWindow.xaml.cs",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\MainWindow.xaml.cs",
|
||||
"RelativeDocumentMoniker": "MainWindow.xaml.cs",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\MainWindow.xaml.cs",
|
||||
"RelativeToolTip": "MainWindow.xaml.cs",
|
||||
"ViewState": "AgIAADMAAAAAAAAAAAAewEoAAAAMAAAAAAAAAA==",
|
||||
"Icon": "00000000-0000-0000-0000-000000000000.000000|iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJ7SURBVDhP7ZQ9aBNhGMef9y7t2eH0TOPHnbnzzmDjkpTqNSEdShDBpRbBQbEI/bCSRVA7iFWk1OpS0CGDH5OlgQgZihRioTgU0VzTEKhSTeLg2aYBLUIgzfUj17wuXptcQUFdBH/j83//P953eF4AE0eGZljXkLL4ZErFsY9LA\u002Bb8VyDz4NGUyiKARDJb5A7srMkc27Wcjr98DpFIBLxeL/A8Hx4cHAybewbkwZuvB9aPXvDrcqcfPJ3\u002BN2rBX1dDtMTUZeqbptfr\u002BgYqZd/G5ubmzrAs66Ioql6W5dL09PQ7swwAgGRaL/YVS5jTcZkDBBwug50kCelLoWQBQIAttbHJh7f6McadVqs1RdP0HoRQk8/n\u002B\u002BR0OnOzs7N6pXDbk1\u002B8/8oifSMxMrPECUzt8mmXdezsCfk6QRAJh8Nxw\u002BPxHNI07TIA6ABwslwufwgGg2tGn6jWAdyb\u002BAx3J7PgE2k43rD7Md5Re8XIenp6HnR3dwMAXAWAeoTQBEKotbJfdcPh4eHmdUz0TerusXMtDVoTX5f2OvZment7WYvFklhZWeHm5\u002BczuVwuzzCM50etXVGUccNh2dIBKIqyjyCI1v3kzLVA/7OcMW9sbCwUi8X70WiUVlUVAABWV1dfYYwvEcS2R24hSVKbKIo5nuc5c2ZGEARWFMVFSZJOVc5/ov89/gv/nH9MSFEU2Gw2aygUeppOp41N2EYqlWoOhUIjgiBYGYapyqpWLxAItJEkOW632yEej4eTyWSmMjdwu92HZVk\u002Bn8/nQdf19mAwuLl6VcLR0dFmTdNuRyIRWFhYgLW1zU\u002BkCpIkwWazQVdXF9A0faejoyNuPvPX\u002BA5Fb\u002BAHZWstowAAAABJRU5ErkJggg==",
|
||||
"WhenOpened": "2026-05-13T09:04:45.364Z"
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 11,
|
||||
"Title": "App.xaml.cs",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\App.xaml.cs",
|
||||
"RelativeDocumentMoniker": "App.xaml.cs",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\App.xaml.cs",
|
||||
"RelativeToolTip": "App.xaml.cs",
|
||||
"ViewState": "AgIAAAAAAAAAAAAAAADwvwAAAAAAAAAAAAAAAA==",
|
||||
"Icon": "00000000-0000-0000-0000-000000000000.000000|iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJ7SURBVDhP7ZQ9aBNhGMef9y7t2eH0TOPHnbnzzmDjkpTqNSEdShDBpRbBQbEI/bCSRVA7iFWk1OpS0CGDH5OlgQgZihRioTgU0VzTEKhSTeLg2aYBLUIgzfUj17wuXptcQUFdBH/j83//P953eF4AE0eGZljXkLL4ZErFsY9LA\u002Bb8VyDz4NGUyiKARDJb5A7srMkc27Wcjr98DpFIBLxeL/A8Hx4cHAybewbkwZuvB9aPXvDrcqcfPJ3\u002BN2rBX1dDtMTUZeqbptfr\u002BgYqZd/G5ubmzrAs66Ioql6W5dL09PQ7swwAgGRaL/YVS5jTcZkDBBwug50kCelLoWQBQIAttbHJh7f6McadVqs1RdP0HoRQk8/n\u002B\u002BR0OnOzs7N6pXDbk1\u002B8/8oifSMxMrPECUzt8mmXdezsCfk6QRAJh8Nxw\u002BPxHNI07TIA6ABwslwufwgGg2tGn6jWAdyb\u002BAx3J7PgE2k43rD7Md5Re8XIenp6HnR3dwMAXAWAeoTQBEKotbJfdcPh4eHmdUz0TerusXMtDVoTX5f2OvZment7WYvFklhZWeHm5\u002BczuVwuzzCM50etXVGUccNh2dIBKIqyjyCI1v3kzLVA/7OcMW9sbCwUi8X70WiUVlUVAABWV1dfYYwvEcS2R24hSVKbKIo5nuc5c2ZGEARWFMVFSZJOVc5/ov89/gv/nH9MSFEU2Gw2aygUeppOp41N2EYqlWoOhUIjgiBYGYapyqpWLxAItJEkOW632yEej4eTyWSmMjdwu92HZVk\u002Bn8/nQdf19mAwuLl6VcLR0dFmTdNuRyIRWFhYgLW1zU\u002BkCpIkwWazQVdXF9A0faejoyNuPvPX\u002BA5Fb\u002BAHZWstowAAAABJRU5ErkJggg==",
|
||||
"WhenOpened": "2026-05-13T09:10:18.727Z"
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 10,
|
||||
"Title": "App.xaml",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\App.xaml",
|
||||
"RelativeDocumentMoniker": "App.xaml",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\App.xaml",
|
||||
"RelativeToolTip": "App.xaml",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
|
||||
"WhenOpened": "2026-05-13T09:08:55.359Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 6,
|
||||
"Title": "MainWindow.xaml",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\MainWindow.xaml",
|
||||
"RelativeDocumentMoniker": "MainWindow.xaml",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\MainWindow.xaml",
|
||||
"RelativeToolTip": "MainWindow.xaml",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
|
||||
"WhenOpened": "2026-05-13T09:04:45.868Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 3,
|
||||
"Title": "GatewayPage.xaml",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\GatewayPage.xaml",
|
||||
"RelativeDocumentMoniker": "Pages\\GatewayPage.xaml",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\Pages\\GatewayPage.xaml",
|
||||
"RelativeToolTip": "Pages\\GatewayPage.xaml",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
|
||||
"WhenOpened": "2026-05-20T03:55:06.415Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 12,
|
||||
"Title": "YKC",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\YKC.csproj",
|
||||
"RelativeDocumentMoniker": "YKC.csproj",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\YKC.csproj",
|
||||
"RelativeToolTip": "YKC.csproj",
|
||||
"Icon": "00000000-0000-0000-0000-000000000000.000000|iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAALUSURBVDhP5ZRfSFNRHMe/5267zrur003TDJrTQJx/yGHRCMFAM3CTRHqoJ6EyiHyIyDdBHwoSRz340OpFihYMwzCD6GnkSOthD7aFuzhMJMUY5vXavNe7u9NLylwpPQZ94Lz8fr/P9xwOhwP8dxAA8Pl8J2ZmZkqmp6ehKEr2zIF0dnbCbrcLvb29AgDoAUCSpH69Xu/heV6RZXktW/oThBCd2Wy2Ukp1siwPAhgAAAYARkdHUVxcDK/XO6VpWuPfrK6urraRkZGEKIoIBAJ7d7PZbBPt7e3\u002BWCx2cm9nfwRByBEEodXlcn2orKwc2KkT/AoEEO5\u002B2u1PqslL/rknaDl6FscKKoL9TYNBR8DBM5J2jdGTV9o2LWOAsk9XY/5Md3FxcQAAdABQUFBwEcCK5Uy\u002BIqUkn8VoaTYZuOat1NbidlvqM01uuxVNvbMp/1BSVG2hhLQfOV\u002B6kNtpWkYQFwCsiKIYxM4d7jC\u002B8BKhr1PpW87b3yilK1PL7ySqqvVpiuHvypp5U5VurCtih7S9UQ9Kh/NSeeZMH9mBALCurCfG4i/OMZqhUaV4tMEkQ0m62Zam6QQFuQkCn6IpU5Tq2yLmSCLb/y2QZ03mjnLPPU2vPmQJcfOUr\u002BNgGiJgzCD0Oig8rI6tA9GGHKLj4BO6Slw4XtSQ8/rLZCtD4XFYaqp0KU0EQ2bzWF7NYXLinIFbztVxIkh6ViOamukjO/DU4dOr1ZbqyTEhMElBJmsKa4XZnjmBUP3dPEP\u002BeKmx5IGVLXzMs6Znkcsxb\u002BxKTMr0dykvL59oaGgYjkQiluzeflBKmfn5\u002BUNVVVVvbTbb7jtkAIDjOLjd7h6WZe/vsQ4gHo8XaZr2pra2timzTgCgr69vQhRFz9LS0mo0Gv2YObAfHMcZnU5nk9VqNRoMhkGv1zuAnc/Bbrc/D4VC4Wg0mu3tiyzLCIfD791uNyoqKoLZ/X\u002BXn25ERIg8ycqdAAAAAElFTkSuQmCC",
|
||||
"WhenOpened": "2026-05-13T09:08:51.991Z"
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 8,
|
||||
"Title": "App.config",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\App.config",
|
||||
"RelativeDocumentMoniker": "App.config",
|
||||
"ToolTip": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\App.config",
|
||||
"RelativeToolTip": "App.config",
|
||||
"ViewState": "AgIAAAAAAAAAAAAAAADwvwUAAAAQAAAAAAAAAA==",
|
||||
"Icon": "00000000-0000-0000-0000-000000000000.000000|iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAOhSURBVDhPrZRPSCNXHMe/LxNjTbquSYiLSYwV/1MwEEwFIWsOBQ/\u002BxS6ElUV6qiIG3ZNQSrGswQotu4i3QqkHXTCIYbeHFi9u2Wo1YhSNh7mkQaNpzWSMzDATNXm9OKIj2B76gXd53\u002B/vw\u002BM9eMD/DFFvzM3NGQG8DAaDpv39fWSz2Vu50\u002BlEY2NjeGJi4sWt4ApGveFwOIyJRGLK4XA0GY3G41gs9geA46vltVgsLSaTydbc3Fzo8Xj2VldXz2/O3zmhy\u002BUqA7A5ODiY8Hq9r2pra\u002BeVrKKi4k1lZWWd0\u002BnMAKgC8JxS\u002Buv09PRfSkdzbboilUohnU5jcnLyxU2ZQiaTeVtWVvYdpfSSEPIjIaRtaGjoQyW/I/w3Ojs7v\u002Bjr6/uMENJGKU0BeKnVageUXHu7DgQCAVBKAQD9/f23svb2diQSiQfDw8Ot0WjUaDKZHjIM8wGl9IHSuX6UcDjsbWpq\u002BnxmZsZrtVpbCgoKCn0\u002BH7e0tPSn0nny5Alisdje1tbWZj6fPxBF8XdBEKyCIOxlMpkV3HyUcDjcF4lERoPBoJvnebhcLpSXl8\u002BXlpa\u002BGhgYCCs9NRUVFW8AbMXj8XEA0ITD4TKWZQvdbve8wWD4sqen5\u002B\u002BLi4vc8vIydnd3\u002BwRB\u002BFotuQ8NIWQzk8k8BoDz8/P3sViszWKxpPR6PaLRKBYWFtQz98Kk0\u002Bnvj46O6rq7u8Xe3t6Cqqqqb1dWVmp5ntfKsgxJklie51\u002BrBxVKSkqeAjhW7pBhGGZclmVbKpUyb29vf3xwcNCzs7OjFUURVwWW47j/LNQ2NDSAZVkwDONNJpM4OTlBNpsFpRRarRZFRUWPRkdHP\u002BV5/v3s7KysFqrReL3eY6vVmhVFEYlEArIsgxACQgguLy\u002Bh0\u002BnckiTNGQyGer/fX6gWqNHkcrmmjo6O31pbW1FcXAyNRgOz2QydTgcA4DgOa2tr5lwu9wsh5LFaoEbj9/uP9Hr9VzqdrosQ0kUp7WIYpsvj8WzU1NQgn89DEAQmEok84jhuYmRk5CkAxONxI8uyP7W0tHxiMpmuhQwAhEKhxMbGBptMJtnT01P28PCQ9fl8IqXUrNFoPuI4DqIoglJqOzs728vn80ehUOi5LMvP9Hq9yW63v1tfX1/BfZ/D2NjY6\u002Brq6h/q6\u002BvDdrsdDMNAkiQIggAAD3mer1tcXHxnMBh\u002BdrvdrDJ35z9UMzU11SFJ0ttgMAi32w2bzfZNIBAYV/cU/gFl85csP2dGWAAAAABJRU5ErkJggg==",
|
||||
"WhenOpened": "2026-05-13T09:08:54.548Z"
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 7,
|
||||
"Title": "ResourcePart.cs",
|
||||
"DocumentMoniker": "C:\\Users\\Administrator\\AppData\\Local\\Temp\\.vsdbgsrc\\3714f74b82eacc6cf8dcf1e32980b0908d4f8b447d25d4eb08ff1424a7b57c02\\ResourcePart.cs",
|
||||
"RelativeDocumentMoniker": "..\\..\\..\\..\\AppData\\Local\\Temp\\.vsdbgsrc\\3714f74b82eacc6cf8dcf1e32980b0908d4f8b447d25d4eb08ff1424a7b57c02\\ResourcePart.cs",
|
||||
"ToolTip": "C:\\Users\\Administrator\\AppData\\Local\\Temp\\.vsdbgsrc\\3714f74b82eacc6cf8dcf1e32980b0908d4f8b447d25d4eb08ff1424a7b57c02\\ResourcePart.cs [\u53EA\u8BFB]",
|
||||
"RelativeToolTip": "..\\..\\..\\..\\AppData\\Local\\Temp\\.vsdbgsrc\\3714f74b82eacc6cf8dcf1e32980b0908d4f8b447d25d4eb08ff1424a7b57c02\\ResourcePart.cs [\u53EA\u8BFB]",
|
||||
"ViewState": "AgIAABMAAAAAAAAAAAAowCcAAAADAAAAAQAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2026-05-13T09:19:37.213Z",
|
||||
"EditorCaption": " [\u53EA\u8BFB]"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
6
上位机/YKC/App.config
Normal file
6
上位机/YKC/App.config
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<configuration>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
|
||||
</startup>
|
||||
</configuration>
|
||||
274
上位机/YKC/App.xaml
Normal file
274
上位机/YKC/App.xaml
Normal file
@@ -0,0 +1,274 @@
|
||||
<Application x:Class="YKC.App"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
StartupUri="LoginWindow.xaml">
|
||||
<Application.Resources>
|
||||
<!-- 颜色 -->
|
||||
<SolidColorBrush x:Key="PrimaryBrush" Color="#3B82F6"/>
|
||||
<SolidColorBrush x:Key="PrimaryDarkBrush" Color="#2563EB"/>
|
||||
<SolidColorBrush x:Key="SidebarBrush" Color="#1E293B"/>
|
||||
<SolidColorBrush x:Key="BgBrush" Color="#F0F2F5"/>
|
||||
<SolidColorBrush x:Key="CardBrush" Color="#FFFFFF"/>
|
||||
<SolidColorBrush x:Key="BorderBrush" Color="#E2E8F0"/>
|
||||
<SolidColorBrush x:Key="TextBrush" Color="#1E293B"/>
|
||||
<SolidColorBrush x:Key="TextDimBrush" Color="#64748B"/>
|
||||
<SolidColorBrush x:Key="TextLightBrush" Color="#94A3B8"/>
|
||||
<SolidColorBrush x:Key="SuccessBrush" Color="#10B981"/>
|
||||
<SolidColorBrush x:Key="DangerBrush" Color="#EF4444"/>
|
||||
|
||||
<!-- 圆角输入框样式 -->
|
||||
<Style x:Key="FormInput" TargetType="TextBox">
|
||||
<Setter Property="Padding" Value="10,8"/>
|
||||
<Setter Property="FontSize" Value="14"/>
|
||||
<Setter Property="BorderBrush" Value="#E2E8F0"/>
|
||||
<Setter Property="BorderThickness" Value="1"/>
|
||||
<Setter Property="VerticalContentAlignment" Value="Center"/>
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="TextBox">
|
||||
<Border Background="White" BorderBrush="{TemplateBinding BorderBrush}"
|
||||
BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="4">
|
||||
<ScrollViewer x:Name="PART_ContentHost" Margin="{TemplateBinding Padding}"/>
|
||||
</Border>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
|
||||
<!-- 密码框样式 -->
|
||||
<Style x:Key="PwdInput" TargetType="PasswordBox">
|
||||
<Setter Property="Padding" Value="10,8"/>
|
||||
<Setter Property="FontSize" Value="14"/>
|
||||
<Setter Property="BorderBrush" Value="#E2E8F0"/>
|
||||
<Setter Property="BorderThickness" Value="1"/>
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="PasswordBox">
|
||||
<Border Background="White" BorderBrush="{TemplateBinding BorderBrush}"
|
||||
BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="4">
|
||||
<Grid>
|
||||
<Rectangle Fill="Transparent"/>
|
||||
<ScrollViewer x:Name="PART_ContentHost"
|
||||
Margin="{TemplateBinding Padding}"
|
||||
VerticalAlignment="Center"/>
|
||||
</Grid>
|
||||
</Border>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
|
||||
<!-- 蓝色主按钮 -->
|
||||
<Style x:Key="BtnPrimary" TargetType="Button">
|
||||
<Setter Property="Background" Value="#3B82F6"/>
|
||||
<Setter Property="Foreground" Value="White"/>
|
||||
<Setter Property="Padding" Value="20,9"/>
|
||||
<Setter Property="FontSize" Value="14"/>
|
||||
<Setter Property="FontWeight" Value="SemiBold"/>
|
||||
<Setter Property="BorderThickness" Value="0"/>
|
||||
<Setter Property="Cursor" Value="Hand"/>
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="Button">
|
||||
<Border Background="{TemplateBinding Background}" CornerRadius="4"
|
||||
Padding="{TemplateBinding Padding}">
|
||||
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"/>
|
||||
</Border>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="Background" Value="#2563EB"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsEnabled" Value="False">
|
||||
<Setter Property="Opacity" Value="0.5"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
|
||||
<!-- 白色边框按钮 -->
|
||||
<Style x:Key="BtnOutline" TargetType="Button" BasedOn="{StaticResource BtnPrimary}">
|
||||
<Setter Property="Background" Value="White"/>
|
||||
<Setter Property="Foreground" Value="#3B82F6"/>
|
||||
<Setter Property="BorderThickness" Value="1"/>
|
||||
<Setter Property="BorderBrush" Value="#3B82F6"/>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="Background" Value="#EFF6FF"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
|
||||
<!-- 红色危险按钮 -->
|
||||
<Style x:Key="BtnDanger" TargetType="Button" BasedOn="{StaticResource BtnPrimary}">
|
||||
<Setter Property="Background" Value="#EF4444"/>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="Background" Value="#DC2626"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
|
||||
<!-- 侧边导航按钮 -->
|
||||
<Style x:Key="NavBtn" TargetType="Button">
|
||||
<Setter Property="Background" Value="Transparent"/>
|
||||
<Setter Property="Foreground" Value="#8899AA"/>
|
||||
<Setter Property="FontSize" Value="14"/>
|
||||
<Setter Property="Height" Value="44"/>
|
||||
<Setter Property="HorizontalContentAlignment" Value="Left"/>
|
||||
<Setter Property="Padding" Value="22,0,0,0"/>
|
||||
<Setter Property="BorderThickness" Value="3,0,0,0"/>
|
||||
<Setter Property="BorderBrush" Value="Transparent"/>
|
||||
<Setter Property="Cursor" Value="Hand"/>
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="Button">
|
||||
<Grid>
|
||||
<Border Background="{TemplateBinding Background}"
|
||||
Padding="{TemplateBinding Padding}"
|
||||
BorderBrush="{TemplateBinding BorderBrush}"
|
||||
BorderThickness="{TemplateBinding BorderThickness}">
|
||||
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
|
||||
VerticalAlignment="Center"/>
|
||||
</Border>
|
||||
</Grid>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="Background" Value="#1A2433"/>
|
||||
<Setter Property="Foreground" Value="#CCDDEE"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
|
||||
<!-- 表单标签(在输入框上方) -->
|
||||
<Style x:Key="FieldLabel" TargetType="TextBlock">
|
||||
<Setter Property="Foreground" Value="#64748B"/>
|
||||
<Setter Property="FontSize" Value="13"/>
|
||||
<Setter Property="FontWeight" Value="SemiBold"/>
|
||||
<Setter Property="Margin" Value="0,0,0,4"/>
|
||||
</Style>
|
||||
|
||||
<!-- 信息行标签(灰色小字) -->
|
||||
<Style x:Key="InfoLabel" TargetType="TextBlock">
|
||||
<Setter Property="Foreground" Value="#94A3B8"/>
|
||||
<Setter Property="FontSize" Value="12"/>
|
||||
<Setter Property="Margin" Value="0,0,0,2"/>
|
||||
</Style>
|
||||
|
||||
<!-- 信息行值 -->
|
||||
<Style x:Key="InfoValue" TargetType="TextBlock">
|
||||
<Setter Property="Foreground" Value="#1E293B"/>
|
||||
<Setter Property="FontSize" Value="14"/>
|
||||
<Setter Property="FontWeight" Value="SemiBold"/>
|
||||
<Setter Property="Margin" Value="0,0,0,8"/>
|
||||
</Style>
|
||||
|
||||
<!-- 徽章 -->
|
||||
<Style x:Key="Badge" TargetType="TextBlock">
|
||||
<Setter Property="FontSize" Value="11"/>
|
||||
<Setter Property="FontWeight" Value="SemiBold"/>
|
||||
<Setter Property="Padding" Value="8,3"/>
|
||||
</Style>
|
||||
|
||||
<!-- 下拉框样式 -->
|
||||
<Style x:Key="StyledCombo" TargetType="ComboBox">
|
||||
<Setter Property="FontSize" Value="13"/>
|
||||
<Setter Property="Height" Value="34"/>
|
||||
<Setter Property="Foreground" Value="#1E293B"/>
|
||||
<Setter Property="BorderThickness" Value="1"/>
|
||||
<Setter Property="Background" Value="White"/>
|
||||
<Setter Property="Padding" Value="12,0,10,0"/>
|
||||
<Setter Property="MinWidth" Value="60"/>
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="ComboBox">
|
||||
<Grid>
|
||||
<Border x:Name="border" Background="{TemplateBinding Background}"
|
||||
BorderBrush="{StaticResource BorderBrush}"
|
||||
BorderThickness="{TemplateBinding BorderThickness}"
|
||||
CornerRadius="4">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<ContentPresenter Grid.Column="0" Margin="{TemplateBinding Padding}"
|
||||
VerticalAlignment="Center"
|
||||
Content="{TemplateBinding SelectionBoxItem}"
|
||||
ContentTemplate="{TemplateBinding ItemTemplate}"
|
||||
IsHitTestVisible="False"/>
|
||||
<Path Grid.Column="1" Data="M0,0 L7,0 L3.5,5 Z"
|
||||
Fill="#94A3B8" Margin="0,0,10,0"
|
||||
VerticalAlignment="Center" Stretch="Uniform"/>
|
||||
</Grid>
|
||||
</Border>
|
||||
<Popup x:Name="PART_Popup" AllowsTransparency="True"
|
||||
IsOpen="{TemplateBinding IsDropDownOpen}"
|
||||
Placement="Bottom" Focusable="False"
|
||||
PopupAnimation="Fade"
|
||||
VerticalOffset="2">
|
||||
<Border x:Name="dropDownBorder" Background="White"
|
||||
BorderBrush="#E2E8F0" BorderThickness="1"
|
||||
CornerRadius="6" Padding="4"
|
||||
Effect="{Binding RelativeSource={RelativeSource Self}, Path=Tag}">
|
||||
<ScrollViewer>
|
||||
<ItemsPresenter/>
|
||||
</ScrollViewer>
|
||||
</Border>
|
||||
</Popup>
|
||||
<!-- 点击切换的 ToggleButton -->
|
||||
<ToggleButton x:Name="toggleBtn"
|
||||
IsChecked="{Binding IsDropDownOpen, RelativeSource={RelativeSource TemplatedParent}}"
|
||||
HorizontalAlignment="Stretch" VerticalAlignment="Stretch"
|
||||
Focusable="False"
|
||||
Background="Transparent"/>
|
||||
</Grid>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter TargetName="border" Property="BorderBrush" Value="#3B82F6"/>
|
||||
<Setter TargetName="border" Property="Background" Value="#F8FAFC"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsDropDownOpen" Value="True">
|
||||
<Setter TargetName="border" Property="BorderBrush" Value="#3B82F6"/>
|
||||
<Setter TargetName="border" Property="Background" Value="White"/>
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
|
||||
<!-- 下拉框项样式 -->
|
||||
<Style TargetType="ComboBoxItem">
|
||||
<Setter Property="Background" Value="Transparent"/>
|
||||
<Setter Property="Foreground" Value="#1E293B"/>
|
||||
<Setter Property="FontSize" Value="13"/>
|
||||
<Setter Property="Padding" Value="12,8"/>
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="ComboBoxItem">
|
||||
<Border x:Name="border" Background="{TemplateBinding Background}"
|
||||
Padding="{TemplateBinding Padding}" CornerRadius="3">
|
||||
<ContentPresenter/>
|
||||
</Border>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter TargetName="border" Property="Background" Value="#EFF6FF"/>
|
||||
<Setter Property="Foreground" Value="#3B82F6"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsSelected" Value="True">
|
||||
<Setter TargetName="border" Property="Background" Value="#DBEAFE"/>
|
||||
<Setter Property="Foreground" Value="#1E40AF"/>
|
||||
<Setter Property="FontWeight" Value="SemiBold"/>
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</Application.Resources>
|
||||
</Application>
|
||||
17
上位机/YKC/App.xaml.cs
Normal file
17
上位机/YKC/App.xaml.cs
Normal file
@@ -0,0 +1,17 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Configuration;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
|
||||
namespace YKC
|
||||
{
|
||||
/// <summary>
|
||||
/// App.xaml 的交互逻辑
|
||||
/// </summary>
|
||||
public partial class App : Application
|
||||
{
|
||||
}
|
||||
}
|
||||
31
上位机/YKC/Config.cs
Normal file
31
上位机/YKC/Config.cs
Normal file
@@ -0,0 +1,31 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace YKC
|
||||
{
|
||||
public static class Config
|
||||
{
|
||||
public static string TargetIp { get; set; } = "10.12.19.100";
|
||||
public static int TargetPort { get; set; } = 6001;
|
||||
public static int LocalPort { get; set; } = 6002;
|
||||
public static int UdpTimeout { get; set; } = 3;
|
||||
|
||||
public static readonly Dictionary<string, string> Cmd = new Dictionary<string, string>
|
||||
{
|
||||
["LOGIN"] = "server_login",
|
||||
["GET_STATUS"] = "server_get_status",
|
||||
["SET_PILE_ID"] = "server_set_pile_id",
|
||||
["GET_PILE_INFO"] = "server_get_pile_info",
|
||||
["REBOOT"] = "server_reboot",
|
||||
["REPORT_DATA"] = "report_data",
|
||||
["PILE_METRICS"] = "pile_metrics",
|
||||
["REAL_TIME_DATA"] = "real_time_data",
|
||||
["GET_GW_INFO"] = "gateway_get_info",
|
||||
["GET_4G_STATUS"] = "gateway_get_4g_status",
|
||||
["GET_CLOUD_CONFIG"] = "gateway_get_cloud_config",
|
||||
["SET_CLOUD_CONFIG"] = "gateway_set_cloud_config",
|
||||
["GET_NET_CONFIG"] = "gateway_get_net_config",
|
||||
["SET_NET_CONFIG"] = "gateway_set_net_config",
|
||||
};
|
||||
}
|
||||
}
|
||||
39
上位机/YKC/LoginWindow.xaml
Normal file
39
上位机/YKC/LoginWindow.xaml
Normal file
@@ -0,0 +1,39 @@
|
||||
<Window x:Class="YKC.LoginWindow"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="登录 - 百瑞充电桩网关管理" Height="420" Width="400"
|
||||
WindowStartupLocation="CenterScreen"
|
||||
WindowStyle="None" AllowsTransparency="True"
|
||||
Background="Transparent"
|
||||
ResizeMode="NoResize">
|
||||
|
||||
<Border Background="White" CornerRadius="8" Padding="40,36"
|
||||
Margin="0" BorderBrush="#E2E8F0" BorderThickness="1"
|
||||
Effect="{Binding RelativeSource={RelativeSource Self}, Path=Tag}">
|
||||
<Border.Tag>
|
||||
<DropShadowEffect BlurRadius="20" ShadowDepth="4" Color="#CC000000" Opacity="0.12"/>
|
||||
</Border.Tag>
|
||||
|
||||
<StackPanel>
|
||||
<TextBlock Text="充电桩管理系统" FontSize="22" FontWeight="Bold"
|
||||
Foreground="#1E293B" HorizontalAlignment="Center" Margin="0,0,0,4"/>
|
||||
<TextBlock Text="百瑞充电桩网关后台" FontSize="13" Foreground="#94A3B8"
|
||||
HorizontalAlignment="Center" Margin="0,0,0,28"/>
|
||||
|
||||
<TextBlock Text="账号" Style="{StaticResource FieldLabel}"/>
|
||||
<TextBox x:Name="txtUsername" Style="{StaticResource FormInput}"
|
||||
Height="50" FontSize="14" Margin="0,0,0,16" Text="admin"/>
|
||||
|
||||
<TextBlock Text="密码" Style="{StaticResource FieldLabel}"/>
|
||||
<PasswordBox x:Name="txtPassword" Style="{StaticResource PwdInput}"
|
||||
Height="50" FontSize="14" Margin="0,0,0,24"/>
|
||||
<Button x:Name="btnLogin" Content="登 录"
|
||||
Style="{StaticResource BtnPrimary}"
|
||||
Height="42" FontSize="15"
|
||||
Click="Login_Click"/>
|
||||
|
||||
<TextBlock x:Name="txtError" Foreground="#EF4444" FontSize="13"
|
||||
HorizontalAlignment="Center" Margin="0,12,0,0"/>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</Window>
|
||||
66
上位机/YKC/LoginWindow.xaml.cs
Normal file
66
上位机/YKC/LoginWindow.xaml.cs
Normal file
@@ -0,0 +1,66 @@
|
||||
using System;
|
||||
using System.Windows;
|
||||
using System.Windows.Input;
|
||||
using Newtonsoft.Json.Linq;
|
||||
|
||||
namespace YKC
|
||||
{
|
||||
public partial class LoginWindow : Window
|
||||
{
|
||||
public LoginWindow()
|
||||
{
|
||||
InitializeComponent();
|
||||
txtUsername.Focus();
|
||||
|
||||
KeyDown += (s, e) =>
|
||||
{
|
||||
if (e.Key == Key.Enter) Login();
|
||||
};
|
||||
}
|
||||
|
||||
private async void Login_Click(object sender, RoutedEventArgs e) => Login();
|
||||
|
||||
private async void Login()
|
||||
{
|
||||
string user = txtUsername.Text.Trim();
|
||||
string pass = txtPassword.Password;
|
||||
|
||||
if (string.IsNullOrEmpty(user) || string.IsNullOrEmpty(pass))
|
||||
{
|
||||
txtError.Text = "请输入账号和密码";
|
||||
return;
|
||||
}
|
||||
|
||||
btnLogin.IsEnabled = false;
|
||||
btnLogin.Content = "校验中...";
|
||||
txtError.Text = "";
|
||||
|
||||
await System.Threading.Tasks.Task.Run(() =>
|
||||
{
|
||||
var result = UdpClientHolder.Instance.SendSync(new JObject
|
||||
{
|
||||
["cmd"] = Config.Cmd["LOGIN"],
|
||||
["username"] = user,
|
||||
["password"] = pass
|
||||
});
|
||||
|
||||
Dispatcher.BeginInvoke(new Action(() =>
|
||||
{
|
||||
if (result.Value<bool>("success"))
|
||||
{
|
||||
var mainWin = new MainWindow();
|
||||
mainWin.SetUser(user);
|
||||
mainWin.Show();
|
||||
Close();
|
||||
}
|
||||
else
|
||||
{
|
||||
txtError.Text = result.Value<string>("error") ?? "账号或密码错误";
|
||||
btnLogin.IsEnabled = true;
|
||||
btnLogin.Content = "登 录";
|
||||
}
|
||||
}));
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
77
上位机/YKC/MainWindow.xaml
Normal file
77
上位机/YKC/MainWindow.xaml
Normal file
@@ -0,0 +1,77 @@
|
||||
<Window x:Class="YKC.MainWindow"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="百瑞充电桩网关管理" Height="956" Width="1365"
|
||||
MinHeight="640" MinWidth="1060"
|
||||
WindowStartupLocation="CenterScreen"
|
||||
Background="#F0F2F5">
|
||||
<WindowChrome.WindowChrome>
|
||||
<WindowChrome CaptionHeight="0" GlassFrameThickness="0" ResizeBorderThickness="4"/>
|
||||
</WindowChrome.WindowChrome>
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="200"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<!-- 侧边栏 -->
|
||||
<Border Grid.Column="0" Background="#1E293B">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="48"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<Border Grid.Row="0" Background="#162033"
|
||||
Padding="18,0" BorderBrush="#2A3A50" BorderThickness="0,0,0,1"
|
||||
MouseLeftButtonDown="Header_MouseDown">
|
||||
<TextBlock Text="百瑞充电桩网关" Foreground="White"
|
||||
FontSize="14" FontWeight="SemiBold" VerticalAlignment="Center"/>
|
||||
</Border>
|
||||
|
||||
<StackPanel Grid.Row="1" Margin="0,4,0,0">
|
||||
<Button x:Name="btnDashboard" Content="📊 总览"
|
||||
Style="{StaticResource NavBtn}" Click="NavButton_Click"
|
||||
Tag="dashboard"/>
|
||||
<Button x:Name="btnRealtime" Content="📈 实时监控"
|
||||
Style="{StaticResource NavBtn}" Click="NavButton_Click"
|
||||
Tag="realtime"/>
|
||||
<Button x:Name="btnCharger" Content="⚙ 充电桩管理"
|
||||
Style="{StaticResource NavBtn}" Click="NavButton_Click"
|
||||
Tag="charger"/>
|
||||
<Button x:Name="btnGateway" Content="🌐 网关管理"
|
||||
Style="{StaticResource NavBtn}" Click="NavButton_Click"
|
||||
Tag="gateway"/>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</Border>
|
||||
|
||||
<!-- 主内容区 -->
|
||||
<Grid Grid.Column="1">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="48"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<!-- 顶栏 -->
|
||||
<Border Grid.Row="0" Background="White" BorderBrush="#E2E8F0" BorderThickness="0,0,0,1"
|
||||
Padding="16,0">
|
||||
<Grid>
|
||||
<TextBlock x:Name="txtPageTitle" Text="总览" FontSize="16"
|
||||
FontWeight="SemiBold" Foreground="#1E293B" VerticalAlignment="Center"/>
|
||||
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center">
|
||||
<TextBlock x:Name="txtUser" Text="Admin" Foreground="#64748B" FontSize="13"
|
||||
VerticalAlignment="Center" Margin="0,0,10,0"/>
|
||||
<Button Content="退出登录" Style="{StaticResource BtnOutline}"
|
||||
Padding="12,5" FontSize="12" Click="Logout_Click"/>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</Border>
|
||||
|
||||
<!-- 页面 Frame -->
|
||||
<Frame x:Name="contentFrame" Grid.Row="1" NavigationUIVisibility="Hidden"/>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Window>
|
||||
110
上位机/YKC/MainWindow.xaml.cs
Normal file
110
上位机/YKC/MainWindow.xaml.cs
Normal file
@@ -0,0 +1,110 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Media;
|
||||
|
||||
namespace YKC
|
||||
{
|
||||
public partial class MainWindow : Window
|
||||
{
|
||||
private Dictionary<string, Button> _navButtons = new Dictionary<string, Button>();
|
||||
private Dictionary<string, string> _navTitles = new Dictionary<string, string>();
|
||||
private string _username = "Admin";
|
||||
|
||||
public void SetUser(string name)
|
||||
{
|
||||
_username = name;
|
||||
if (txtUser != null) txtUser.Text = name;
|
||||
}
|
||||
|
||||
public MainWindow()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
_navButtons["dashboard"] = btnDashboard;
|
||||
_navButtons["realtime"] = btnRealtime;
|
||||
_navButtons["charger"] = btnCharger;
|
||||
_navButtons["gateway"] = btnGateway;
|
||||
|
||||
_navTitles["dashboard"] = "总览";
|
||||
_navTitles["realtime"] = "实时监控";
|
||||
_navTitles["charger"] = "充电桩管理";
|
||||
_navTitles["gateway"] = "网关管理";
|
||||
|
||||
txtUser.Text = "Admin";
|
||||
|
||||
Loaded += (s, e) =>
|
||||
{
|
||||
UdpClientHolder.Instance.OnActiveReport += PilesStoreHolder.Instance.HandleReport;
|
||||
NavigateTo("dashboard");
|
||||
};
|
||||
}
|
||||
|
||||
private void SetActiveNav(string key)
|
||||
{
|
||||
foreach (var kv in _navButtons)
|
||||
{
|
||||
var btn = kv.Value;
|
||||
var border = btn.Template?.FindName("border", btn) as Border;
|
||||
if (kv.Key == key)
|
||||
{
|
||||
btn.Foreground = new SolidColorBrush(Colors.White);
|
||||
btn.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#1A3A5C"));
|
||||
btn.BorderBrush = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#3B82F6"));
|
||||
btn.BorderThickness = new Thickness(3, 0, 0, 0);
|
||||
}
|
||||
else
|
||||
{
|
||||
btn.Foreground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#8899AA"));
|
||||
btn.Background = new SolidColorBrush(Colors.Transparent);
|
||||
btn.BorderBrush = new SolidColorBrush(Colors.Transparent);
|
||||
btn.BorderThickness = new Thickness(3, 0, 0, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void NavigateTo(string key)
|
||||
{
|
||||
SetActiveNav(key);
|
||||
txtPageTitle.Text = _navTitles.ContainsKey(key) ? _navTitles[key] : key;
|
||||
|
||||
Uri uri;
|
||||
switch (key)
|
||||
{
|
||||
case "dashboard": uri = new Uri("Pages/DashboardPage.xaml", UriKind.Relative); break;
|
||||
case "realtime": uri = new Uri("Pages/RealtimePage.xaml", UriKind.Relative); break;
|
||||
case "charger": uri = new Uri("Pages/ChargerPage.xaml", UriKind.Relative); break;
|
||||
case "gateway": uri = new Uri("Pages/GatewayPage.xaml", UriKind.Relative); break;
|
||||
default: return;
|
||||
}
|
||||
|
||||
contentFrame.Source = uri;
|
||||
}
|
||||
|
||||
private void NavButton_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (sender is Button btn && btn.Tag is string key)
|
||||
{
|
||||
NavigateTo(key);
|
||||
}
|
||||
}
|
||||
|
||||
private void Logout_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var result = MessageBox.Show("确认退出登录?", "退出", MessageBoxButton.YesNo, MessageBoxImage.Question);
|
||||
if (result == MessageBoxResult.Yes)
|
||||
{
|
||||
var loginWin = new LoginWindow();
|
||||
loginWin.Show();
|
||||
Close();
|
||||
}
|
||||
}
|
||||
|
||||
private void Header_MouseDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
|
||||
{
|
||||
if (e.LeftButton == System.Windows.Input.MouseButtonState.Pressed)
|
||||
DragMove();
|
||||
}
|
||||
}
|
||||
}
|
||||
96
上位机/YKC/Pages/ChargerPage.xaml
Normal file
96
上位机/YKC/Pages/ChargerPage.xaml
Normal file
@@ -0,0 +1,96 @@
|
||||
<Page x:Class="YKC.ChargerPage"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="充电桩管理" Background="#F0F2F5">
|
||||
|
||||
<ScrollViewer VerticalScrollBarVisibility="Auto">
|
||||
<StackPanel Margin="24">
|
||||
<TextBlock Text="充电桩管理" FontSize="16" FontWeight="SemiBold"
|
||||
Foreground="#1E293B" Margin="0,0,0,20"/>
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<!-- 写入桩ID -->
|
||||
<Border Grid.Column="0" Background="White" CornerRadius="6"
|
||||
Margin="0,0,8,0" Padding="24">
|
||||
<StackPanel>
|
||||
<TextBlock Text="写入桩 ID" FontSize="14" FontWeight="SemiBold"
|
||||
Foreground="#1E293B" Margin="0,0,0,16"/>
|
||||
|
||||
<TextBlock Text="桩编号" Style="{StaticResource FieldLabel}"/>
|
||||
<TextBox x:Name="txtSetPileIdx" Text="1" Width="80"
|
||||
Style="{StaticResource FormInput}" Margin="0,0,0,16"/>
|
||||
|
||||
<TextBlock Text="序列号 (HEX, 14位)" Style="{StaticResource FieldLabel}"/>
|
||||
<TextBox x:Name="txtSetPileId" Width="240" MaxLength="14"
|
||||
Style="{StaticResource FormInput}" FontFamily="Consolas"
|
||||
Margin="0,0,0,16"/>
|
||||
|
||||
<WrapPanel>
|
||||
<Button Content="写 入" Style="{StaticResource BtnPrimary}" Width="90"
|
||||
Click="SetPileId_Click"/>
|
||||
<TextBlock x:Name="txtSetResult" Foreground="#10B981"
|
||||
FontSize="13" VerticalAlignment="Center" Margin="12,0,0,0"/>
|
||||
</WrapPanel>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
<!-- 查询充电桩 -->
|
||||
<Border Grid.Column="1" Background="White" CornerRadius="6"
|
||||
Margin="8,0,0,0" Padding="24">
|
||||
<StackPanel>
|
||||
<TextBlock Text="查询充电桩信息" FontSize="14" FontWeight="SemiBold"
|
||||
Foreground="#1E293B" Margin="0,0,0,16"/>
|
||||
|
||||
<TextBlock Text="桩编号" Style="{StaticResource FieldLabel}"/>
|
||||
<WrapPanel Margin="0,0,0,14">
|
||||
<TextBox x:Name="txtInfoPileIdx" Text="1" Width="80"
|
||||
Style="{StaticResource FormInput}"/>
|
||||
<Button Content="查 询" Style="{StaticResource BtnOutline}" Width="80"
|
||||
Margin="10,0,0,0" Click="GetPileInfo_Click"/>
|
||||
<TextBlock x:Name="txtInfoResult" VerticalAlignment="Center"
|
||||
FontSize="13" Margin="10,0,0,0"/>
|
||||
</WrapPanel>
|
||||
|
||||
<!-- 查询结果 -->
|
||||
<Border x:Name="panelInfo" Background="#F8FAFC"
|
||||
CornerRadius="4" Padding="14" Visibility="Collapsed">
|
||||
<StackPanel>
|
||||
<TextBlock Text="序列号" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtInfoSerial" Text="--" Style="{StaticResource InfoValue}"/>
|
||||
<TextBlock Text="类型" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtInfoType" Text="--" Style="{StaticResource InfoValue}"/>
|
||||
<TextBlock Text="枪数量" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtInfoGuns" Text="--" Style="{StaticResource InfoValue}"/>
|
||||
<TextBlock Text="协议版本" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtInfoProto" Text="--" Style="{StaticResource InfoValue}"/>
|
||||
<TextBlock Text="软件版本" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtInfoSw" Text="--" Style="{StaticResource InfoValue}"/>
|
||||
<TextBlock Text="SIM 卡" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtInfoSim" Text="--" Style="{StaticResource InfoValue}"/>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</Grid>
|
||||
|
||||
<!-- 设备操作 -->
|
||||
<Border Background="White" CornerRadius="6" Padding="24" Margin="0,14,0,0">
|
||||
<StackPanel>
|
||||
<TextBlock Text="设备操作" FontSize="14" FontWeight="SemiBold"
|
||||
Foreground="#1E293B" Margin="0,0,0,14"/>
|
||||
<WrapPanel>
|
||||
<Button Content="重启设备" Style="{StaticResource BtnDanger}" Width="110"
|
||||
Click="Reboot_Click"/>
|
||||
<TextBlock x:Name="txtRebootResult" Foreground="#10B981"
|
||||
FontSize="13" VerticalAlignment="Center" Margin="12,0,0,0"/>
|
||||
</WrapPanel>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</StackPanel>
|
||||
</ScrollViewer>
|
||||
</Page>
|
||||
118
上位机/YKC/Pages/ChargerPage.xaml.cs
Normal file
118
上位机/YKC/Pages/ChargerPage.xaml.cs
Normal file
@@ -0,0 +1,118 @@
|
||||
using System;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using Newtonsoft.Json.Linq;
|
||||
|
||||
namespace YKC
|
||||
{
|
||||
public partial class ChargerPage : Page
|
||||
{
|
||||
public ChargerPage()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private async void SetPileId_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
string idx = txtSetPileIdx.Text.Trim();
|
||||
string id = txtSetPileId.Text.Trim();
|
||||
|
||||
if (string.IsNullOrEmpty(id) || id.Length != 14)
|
||||
{
|
||||
ShowResult(txtSetResult, "序列号需14位HEX", false);
|
||||
return;
|
||||
}
|
||||
|
||||
ShowResult(txtSetResult, "发送中...", true);
|
||||
|
||||
await System.Threading.Tasks.Task.Run(() =>
|
||||
{
|
||||
var result = UdpClientHolder.Instance.SendSync(new JObject
|
||||
{
|
||||
["cmd"] = Config.Cmd["SET_PILE_ID"],
|
||||
["pile_index"] = int.Parse(idx),
|
||||
["pile_id"] = id
|
||||
});
|
||||
Dispatcher.BeginInvoke(new Action(() =>
|
||||
{
|
||||
if (result.Value<bool>("success"))
|
||||
ShowResult(txtSetResult, "写入成功", true);
|
||||
else
|
||||
ShowResult(txtSetResult, result.Value<string>("error") ?? "失败", false);
|
||||
}));
|
||||
});
|
||||
}
|
||||
|
||||
private async void GetPileInfo_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
string idx = txtInfoPileIdx.Text.Trim();
|
||||
panelInfo.Visibility = Visibility.Visible;
|
||||
txtInfoResult.Text = "查询中...";
|
||||
txtInfoResult.Foreground = new System.Windows.Media.SolidColorBrush(
|
||||
(System.Windows.Media.Color)System.Windows.Media.ColorConverter.ConvertFromString("#64748B"));
|
||||
|
||||
await System.Threading.Tasks.Task.Run(() =>
|
||||
{
|
||||
var result = UdpClientHolder.Instance.SendSync(new JObject
|
||||
{
|
||||
["cmd"] = Config.Cmd["GET_PILE_INFO"],
|
||||
["pile_index"] = int.Parse(idx)
|
||||
});
|
||||
Dispatcher.BeginInvoke(new Action(() =>
|
||||
{
|
||||
if (result.Value<bool>("success") && result["serial"] != null)
|
||||
{
|
||||
txtInfoSerial.Text = result.Value<string>("serial") ?? "--";
|
||||
txtInfoType.Text = result.Value<string>("type") ?? "--";
|
||||
txtInfoGuns.Text = result.Value<string>("gun_num") ?? "--";
|
||||
txtInfoProto.Text = result.Value<string>("protocol_ver") ?? "--";
|
||||
txtInfoSw.Text = result.Value<string>("software_ver") ?? "--";
|
||||
txtInfoSim.Text = result.Value<string>("sim") ?? "--";
|
||||
txtInfoResult.Text = "";
|
||||
}
|
||||
else
|
||||
{
|
||||
txtInfoSerial.Text = "--"; txtInfoType.Text = "--";
|
||||
txtInfoGuns.Text = "--"; txtInfoProto.Text = "--";
|
||||
txtInfoSw.Text = "--"; txtInfoSim.Text = "--";
|
||||
ShowResult(txtInfoResult, result.Value<string>("error") ?? "查询失败", false);
|
||||
}
|
||||
}));
|
||||
});
|
||||
}
|
||||
|
||||
private async void Reboot_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var dialogResult = MessageBox.Show("确认重启设备?", "警告", MessageBoxButton.YesNo, MessageBoxImage.Warning);
|
||||
if (dialogResult != MessageBoxResult.Yes) return;
|
||||
|
||||
ShowResult(txtRebootResult, "发送中...", true);
|
||||
|
||||
await System.Threading.Tasks.Task.Run(() =>
|
||||
{
|
||||
var result = UdpClientHolder.Instance.SendSync(new JObject
|
||||
{
|
||||
["cmd"] = Config.Cmd["REBOOT"]
|
||||
});
|
||||
Dispatcher.BeginInvoke(new Action(() =>
|
||||
{
|
||||
if (result.Value<bool>("success"))
|
||||
ShowResult(txtRebootResult, "重启指令已发送", true);
|
||||
else
|
||||
ShowResult(txtRebootResult, result.Value<string>("error") ?? "失败", false);
|
||||
}));
|
||||
});
|
||||
}
|
||||
|
||||
private void ShowResult(TextBlock el, string msg, bool ok)
|
||||
{
|
||||
el.Text = msg;
|
||||
el.Foreground = new System.Windows.Media.SolidColorBrush(
|
||||
(System.Windows.Media.Color)System.Windows.Media.ColorConverter.ConvertFromString(
|
||||
ok ? "#10B981" : "#EF4444"));
|
||||
var timer = new System.Windows.Threading.DispatcherTimer { Interval = TimeSpan.FromSeconds(4) };
|
||||
timer.Tick += (s, _) => { el.Text = ""; timer.Stop(); };
|
||||
timer.Start();
|
||||
}
|
||||
}
|
||||
}
|
||||
92
上位机/YKC/Pages/DashboardPage.xaml
Normal file
92
上位机/YKC/Pages/DashboardPage.xaml
Normal file
@@ -0,0 +1,92 @@
|
||||
<Page x:Class="YKC.DashboardPage"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="总览" Background="#F0F2F5">
|
||||
|
||||
<ScrollViewer VerticalScrollBarVisibility="Auto">
|
||||
<StackPanel Margin="24">
|
||||
<!-- 统计卡片行 -->
|
||||
<WrapPanel Margin="0,0,0,20">
|
||||
<Border Background="White" CornerRadius="6" Width="240"
|
||||
Padding="20,18" Margin="0,0,16,16">
|
||||
<StackPanel>
|
||||
<TextBlock Text="设备连接" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtConnStatus" Text="--"
|
||||
FontSize="20" FontWeight="SemiBold" Foreground="#1E293B"/>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
<Border Background="White" CornerRadius="6" Width="240"
|
||||
Padding="20,18" Margin="0,0,16,16">
|
||||
<StackPanel>
|
||||
<TextBlock Text="在线充电桩" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtOnlineCount" Text="--"
|
||||
FontSize="28" FontWeight="SemiBold" Foreground="#10B981"/>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
<Border Background="White" CornerRadius="6" Width="240"
|
||||
Padding="20,18" Margin="0,0,16,16">
|
||||
<StackPanel>
|
||||
<TextBlock Text="充电中" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtChargingCount" Text="--"
|
||||
FontSize="28" FontWeight="SemiBold" Foreground="#3B82F6"/>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</WrapPanel>
|
||||
|
||||
<!-- 标题 + 按钮 -->
|
||||
<Grid Margin="0,0,0,12">
|
||||
<TextBlock Text="充电桩列表" FontSize="15" FontWeight="SemiBold"
|
||||
Foreground="#1E293B" VerticalAlignment="Center"/>
|
||||
<Button Content="刷新" Style="{StaticResource BtnPrimary}"
|
||||
Width="90" HorizontalAlignment="Right"
|
||||
Click="Refresh_Click"/>
|
||||
</Grid>
|
||||
|
||||
<!-- 表格 -->
|
||||
<Border Background="White" CornerRadius="6" Padding="0">
|
||||
<DataGrid x:Name="dgPiles" AutoGenerateColumns="False" IsReadOnly="True"
|
||||
HeadersVisibility="Column" CanUserAddRows="False"
|
||||
CanUserDeleteRows="False" RowHeight="40"
|
||||
GridLinesVisibility="Horizontal"
|
||||
HorizontalGridLinesBrush="#F1F5F9"
|
||||
BorderThickness="0" Background="White">
|
||||
<DataGrid.ColumnHeaderStyle>
|
||||
<Style TargetType="DataGridColumnHeader">
|
||||
<Setter Property="Background" Value="#F8FAFC"/>
|
||||
<Setter Property="Foreground" Value="#64748B"/>
|
||||
<Setter Property="FontSize" Value="12"/>
|
||||
<Setter Property="FontWeight" Value="SemiBold"/>
|
||||
<Setter Property="Padding" Value="16,10"/>
|
||||
<Setter Property="BorderBrush" Value="#E2E8F0"/>
|
||||
<Setter Property="BorderThickness" Value="0,0,0,1"/>
|
||||
</Style>
|
||||
</DataGrid.ColumnHeaderStyle>
|
||||
<DataGrid.CellStyle>
|
||||
<Style TargetType="DataGridCell">
|
||||
<Setter Property="BorderThickness" Value="0"/>
|
||||
<Setter Property="FontSize" Value="13"/>
|
||||
<Setter Property="Padding" Value="16,8"/>
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="DataGridCell">
|
||||
<Border Background="{TemplateBinding Background}">
|
||||
<ContentPresenter Margin="{TemplateBinding Padding}"
|
||||
VerticalAlignment="Center"/>
|
||||
</Border>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</DataGrid.CellStyle>
|
||||
<DataGrid.Columns>
|
||||
<DataGridTextColumn Header="#" Width="50" Binding="{Binding Index}"/>
|
||||
<DataGridTextColumn Header="序列号" Width="*" Binding="{Binding Serial}"/>
|
||||
<DataGridTextColumn Header="桩状态" Width="80" Binding="{Binding StatusText}"/>
|
||||
<DataGridTextColumn Header="枪1" Width="80" Binding="{Binding Gun1Text}"/>
|
||||
<DataGridTextColumn Header="枪2" Width="80" Binding="{Binding Gun2Text}"/>
|
||||
</DataGrid.Columns>
|
||||
</DataGrid>
|
||||
</Border>
|
||||
</StackPanel>
|
||||
</ScrollViewer>
|
||||
</Page>
|
||||
105
上位机/YKC/Pages/DashboardPage.xaml.cs
Normal file
105
上位机/YKC/Pages/DashboardPage.xaml.cs
Normal file
@@ -0,0 +1,105 @@
|
||||
using System;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Linq;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using OxyPlot;
|
||||
|
||||
namespace YKC
|
||||
{
|
||||
public partial class DashboardPage : Page
|
||||
{
|
||||
private Timer _timer;
|
||||
|
||||
public class PileRow
|
||||
{
|
||||
public int Index { get; set; }
|
||||
public string Serial { get; set; } = "--";
|
||||
public string StatusText { get; set; } = "--";
|
||||
public string Gun1Text { get; set; } = "--";
|
||||
public string Gun2Text { get; set; } = "--";
|
||||
}
|
||||
|
||||
public ObservableCollection<PileRow> Rows { get; } = new ObservableCollection<PileRow>();
|
||||
|
||||
public DashboardPage()
|
||||
{
|
||||
InitializeComponent();
|
||||
dgPiles.ItemsSource = Rows;
|
||||
Loaded += (s, e) =>
|
||||
{
|
||||
Dispatcher.BeginInvoke(new Action(() => RefreshData()),
|
||||
System.Windows.Threading.DispatcherPriority.Background);
|
||||
_timer = new Timer((_) => Dispatcher.BeginInvoke(new Action(RefreshData)), null, 5000, 5000);
|
||||
};
|
||||
Unloaded += (s, e) => _timer?.Dispose();
|
||||
}
|
||||
|
||||
private void Refresh_Click(object sender, RoutedEventArgs e) => RefreshData();
|
||||
|
||||
private void RefreshData()
|
||||
{
|
||||
try
|
||||
{
|
||||
var result = UdpClientHolder.Instance.SendSync(new JObject
|
||||
{
|
||||
["cmd"] = Config.Cmd["GET_STATUS"]
|
||||
});
|
||||
if (result.Value<bool>("success") == false && result["piles"] == null)
|
||||
{
|
||||
Dispatcher.BeginInvoke(new Action(() => txtConnStatus.Text = "无响应"));
|
||||
return;
|
||||
}
|
||||
|
||||
Dispatcher.BeginInvoke(new Action(() => txtConnStatus.Text = "在线"));
|
||||
|
||||
var piles = result["piles"] as JArray ?? new JArray();
|
||||
int online = 0, charging = 0;
|
||||
var rows = new ObservableCollection<PileRow>();
|
||||
|
||||
foreach (var p in piles)
|
||||
{
|
||||
bool isOnline = p.Value<bool>("is_online");
|
||||
if (isOnline) online++;
|
||||
|
||||
var guns = p["guns"] as JArray ?? new JArray();
|
||||
foreach (var g in guns)
|
||||
if (g.Value<int?>("status") == 3) charging++;
|
||||
|
||||
rows.Add(new PileRow
|
||||
{
|
||||
Index = rows.Count + 1,
|
||||
Serial = p.Value<string>("serial") ?? "--",
|
||||
StatusText = isOnline ? "在线" : "离线",
|
||||
Gun1Text = guns.Count > 0 ? GunStatusText(guns[0].Value<int>("status")) : "--",
|
||||
Gun2Text = guns.Count > 1 ? GunStatusText(guns[1].Value<int>("status")) : "--",
|
||||
});
|
||||
}
|
||||
|
||||
Dispatcher.BeginInvoke(new Action(() =>
|
||||
{
|
||||
txtOnlineCount.Text = online.ToString();
|
||||
txtChargingCount.Text = charging.ToString();
|
||||
Rows.Clear();
|
||||
foreach (var r in rows) Rows.Add(r);
|
||||
}));
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
private string GunStatusText(int status)
|
||||
{
|
||||
switch (status)
|
||||
{
|
||||
case 0: return "离线";
|
||||
case 1: return "故障";
|
||||
case 2: return "空闲";
|
||||
case 3: return "充电中";
|
||||
default: return status.ToString();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
145
上位机/YKC/Pages/GatewayPage.xaml
Normal file
145
上位机/YKC/Pages/GatewayPage.xaml
Normal file
@@ -0,0 +1,145 @@
|
||||
<Page x:Class="YKC.GatewayPage"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="网关管理" Background="#F0F2F5">
|
||||
|
||||
<ScrollViewer VerticalScrollBarVisibility="Auto">
|
||||
<StackPanel Margin="24">
|
||||
<TextBlock Text="网关管理" FontSize="16" FontWeight="SemiBold"
|
||||
Foreground="#1E293B" Margin="0,0,0,20"/>
|
||||
|
||||
<Grid Margin="0,0,0,14">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<!-- 网关基本信息 -->
|
||||
<Border Grid.Column="0" Background="White" CornerRadius="6"
|
||||
Margin="0,0,8,0" Padding="24">
|
||||
<StackPanel>
|
||||
<TextBlock Text="网关基本信息" FontSize="14" FontWeight="SemiBold"
|
||||
Foreground="#1E293B" Margin="0,0,0,14"/>
|
||||
|
||||
<TextBlock Text="网关 ID" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtGwId" Text="--" Style="{StaticResource InfoValue}"
|
||||
FontFamily="Consolas"/>
|
||||
|
||||
<TextBlock Text="软件版本" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtGwSw" Text="--" Style="{StaticResource InfoValue}"/>
|
||||
|
||||
<TextBlock Text="硬件版本" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtGwHw" Text="--" Style="{StaticResource InfoValue}"/>
|
||||
|
||||
<TextBlock Text="运行时间" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtGwUptime" Text="--" Style="{StaticResource InfoValue}"/>
|
||||
|
||||
<Grid>
|
||||
<Button Content="刷新" Style="{StaticResource BtnPrimary}" Width="80"
|
||||
Click="RefreshGwInfo_Click" Margin="0,4,0,0"/>
|
||||
<TextBlock x:Name="txtGwStatus" FontSize="12"
|
||||
VerticalAlignment="Center" Margin="92,4,0,0"/>
|
||||
</Grid>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
<!-- 4G 状态 -->
|
||||
<Border Grid.Column="1" Background="White" CornerRadius="6"
|
||||
Margin="8,0,0,0" Padding="24">
|
||||
<StackPanel>
|
||||
<TextBlock Text="4G 状态" FontSize="14" FontWeight="SemiBold"
|
||||
Foreground="#1E293B" Margin="0,0,0,14"/>
|
||||
|
||||
<TextBlock Text="SIM 卡号" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtSim" Text="--" Style="{StaticResource InfoValue}"
|
||||
FontFamily="Consolas"/>
|
||||
|
||||
<TextBlock Text="网络状态" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtNetStatus" Text="--" Style="{StaticResource InfoValue}"
|
||||
Foreground="#10B981"/>
|
||||
|
||||
<TextBlock Text="信号强度" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtSignal" Text="--" Style="{StaticResource InfoValue}"/>
|
||||
|
||||
<TextBlock Text="运营商" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtIsp" Text="--" Style="{StaticResource InfoValue}"/>
|
||||
|
||||
<Grid>
|
||||
<Button Content="刷新" Style="{StaticResource BtnPrimary}" Width="80"
|
||||
Click="Refresh4G_Click" Margin="0,4,0,0"/>
|
||||
<TextBlock x:Name="txt4GStatus" FontSize="12"
|
||||
VerticalAlignment="Center" Margin="92,4,0,0"/>
|
||||
</Grid>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</Grid>
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<!-- 云服务器配置 -->
|
||||
<Border Grid.Column="0" Background="White" CornerRadius="6"
|
||||
Margin="0,0,8,0" Padding="24">
|
||||
<StackPanel>
|
||||
<TextBlock Text="云服务器配置" FontSize="14" FontWeight="SemiBold"
|
||||
Foreground="#1E293B" Margin="0,0,0,14"/>
|
||||
|
||||
<TextBlock Text="服务器地址 (IP 或域名)" Style="{StaticResource FieldLabel}"/>
|
||||
<TextBox x:Name="txtCloudHost" Width="220"
|
||||
Style="{StaticResource FormInput}" Margin="0,0,0,12"/>
|
||||
|
||||
<TextBlock Text="端口号" Style="{StaticResource FieldLabel}"/>
|
||||
<TextBox x:Name="txtCloudPort" Width="120"
|
||||
Style="{StaticResource FormInput}" Margin="0,0,0,16"/>
|
||||
|
||||
<WrapPanel>
|
||||
<Button Content="查 询" Style="{StaticResource BtnOutline}" Width="80"
|
||||
Click="LoadCloudConfig_Click"/>
|
||||
<Button Content="保 存" Style="{StaticResource BtnPrimary}" Width="80"
|
||||
Click="SaveCloudConfig_Click" Margin="8,0,0,0"/>
|
||||
<TextBlock x:Name="txtCloudResult" Foreground="#10B981"
|
||||
FontSize="13" VerticalAlignment="Center" Margin="12,0,0,0"/>
|
||||
</WrapPanel>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
<!-- 网络配置 -->
|
||||
<Border Grid.Column="1" Background="White" CornerRadius="6"
|
||||
Margin="8,0,0,0" Padding="24">
|
||||
<StackPanel>
|
||||
<TextBlock Text="有线网络配置" FontSize="14" FontWeight="SemiBold"
|
||||
Foreground="#1E293B" Margin="0,0,0,14"/>
|
||||
|
||||
<TextBlock Text="IP 地址" Style="{StaticResource FieldLabel}"/>
|
||||
<TextBox x:Name="txtNetIp" Width="200"
|
||||
Style="{StaticResource FormInput}" Margin="0,0,0,10"/>
|
||||
|
||||
<TextBlock Text="子网掩码" Style="{StaticResource FieldLabel}"/>
|
||||
<TextBox x:Name="txtNetMask" Width="200"
|
||||
Style="{StaticResource FormInput}" Margin="0,0,0,10"/>
|
||||
|
||||
<TextBlock Text="默认网关" Style="{StaticResource FieldLabel}"/>
|
||||
<TextBox x:Name="txtNetGw" Width="200"
|
||||
Style="{StaticResource FormInput}" Margin="0,0,0,10"/>
|
||||
|
||||
<TextBlock Text="DNS 服务器" Style="{StaticResource FieldLabel}"/>
|
||||
<TextBox x:Name="txtNetDns" Width="200"
|
||||
Style="{StaticResource FormInput}" Margin="0,0,0,16"/>
|
||||
|
||||
<WrapPanel>
|
||||
<Button Content="查 询" Style="{StaticResource BtnOutline}" Width="80"
|
||||
Click="LoadNetConfig_Click"/>
|
||||
<Button Content="保 存" Style="{StaticResource BtnPrimary}" Width="80"
|
||||
Click="SaveNetConfig_Click" Margin="8,0,0,0"/>
|
||||
<TextBlock x:Name="txtNetResult" Foreground="#10B981"
|
||||
FontSize="13" VerticalAlignment="Center" Margin="12,0,0,0"/>
|
||||
</WrapPanel>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</Grid>
|
||||
</StackPanel>
|
||||
</ScrollViewer>
|
||||
</Page>
|
||||
227
上位机/YKC/Pages/GatewayPage.xaml.cs
Normal file
227
上位机/YKC/Pages/GatewayPage.xaml.cs
Normal file
@@ -0,0 +1,227 @@
|
||||
using System;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using Newtonsoft.Json.Linq;
|
||||
|
||||
namespace YKC
|
||||
{
|
||||
public partial class GatewayPage : Page
|
||||
{
|
||||
private static readonly Regex IpRegex = new Regex(
|
||||
@"^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]?\d)$");
|
||||
private static readonly Regex DomainRegex = new Regex(
|
||||
@"^(?!-)[A-Za-z0-9-]{1,63}(?<!-)(\.[A-Za-z]{2,})+$");
|
||||
|
||||
public GatewayPage()
|
||||
{
|
||||
InitializeComponent();
|
||||
Loaded += (s, e) =>
|
||||
{
|
||||
Dispatcher.BeginInvoke(new Action(() =>
|
||||
{
|
||||
if (txtGwId != null) RefreshAll();
|
||||
}), System.Windows.Threading.DispatcherPriority.Background);
|
||||
};
|
||||
}
|
||||
|
||||
private bool IsValidIp(string s) => IpRegex.IsMatch(s);
|
||||
private bool IsValidDomain(string s) => DomainRegex.IsMatch(s);
|
||||
private bool IsValidHost(string s) => IsValidIp(s) || IsValidDomain(s);
|
||||
|
||||
private void ShowResult(TextBlock el, string msg, bool ok)
|
||||
{
|
||||
el.Text = msg;
|
||||
el.Foreground = new System.Windows.Media.SolidColorBrush(
|
||||
(System.Windows.Media.Color)System.Windows.Media.ColorConverter.ConvertFromString(
|
||||
ok ? "#10B981" : "#EF4444"));
|
||||
var timer = new System.Windows.Threading.DispatcherTimer { Interval = TimeSpan.FromSeconds(3) };
|
||||
timer.Tick += (s, _) => { el.Text = ""; timer.Stop(); };
|
||||
timer.Start();
|
||||
}
|
||||
|
||||
private string FormatUptime(int sec)
|
||||
{
|
||||
if (sec <= 0) return "--";
|
||||
int d = sec / 86400;
|
||||
int h = (sec % 86400) / 3600;
|
||||
int m = (sec % 3600) / 60;
|
||||
string result = "";
|
||||
if (d > 0) result += d + "天";
|
||||
if (h > 0) result += h + "时";
|
||||
if (m > 0) result += m + "分";
|
||||
return result.Length > 0 ? result : sec + "秒";
|
||||
}
|
||||
|
||||
private void RefreshAll()
|
||||
{
|
||||
RefreshGwInfo();
|
||||
Refresh4G();
|
||||
}
|
||||
|
||||
private async void RefreshGwInfo()
|
||||
{
|
||||
txtGwStatus.Text = "加载中...";
|
||||
txtGwStatus.Foreground = new System.Windows.Media.SolidColorBrush(
|
||||
(System.Windows.Media.Color)System.Windows.Media.ColorConverter.ConvertFromString("#64748B"));
|
||||
await System.Threading.Tasks.Task.Run(() =>
|
||||
{
|
||||
var result = UdpClientHolder.Instance.SendSync(new JObject { ["cmd"] = Config.Cmd["GET_GW_INFO"] });
|
||||
Dispatcher.BeginInvoke(new Action(() =>
|
||||
{
|
||||
if (result.Value<bool>("success") && result["device_id"] != null)
|
||||
{
|
||||
txtGwId.Text = result.Value<string>("device_id") ?? "--";
|
||||
txtGwSw.Text = result.Value<string>("software_ver") ?? result.Value<string>("sw_ver") ?? "--";
|
||||
txtGwHw.Text = result.Value<string>("hardware_ver") ?? result.Value<string>("hw_ver") ?? "--";
|
||||
txtGwUptime.Text = FormatUptime(result.Value<int?>("uptime") ?? 0);
|
||||
txtGwStatus.Text = "";
|
||||
}
|
||||
else
|
||||
{
|
||||
txtGwId.Text = "--"; txtGwSw.Text = "--"; txtGwHw.Text = "--"; txtGwUptime.Text = "--";
|
||||
ShowResult(txtGwStatus, result.Value<string>("error") ?? "查询超时", false);
|
||||
}
|
||||
}));
|
||||
});
|
||||
}
|
||||
|
||||
private async void Refresh4G()
|
||||
{
|
||||
txt4GStatus.Text = "加载中...";
|
||||
txt4GStatus.Foreground = new System.Windows.Media.SolidColorBrush(
|
||||
(System.Windows.Media.Color)System.Windows.Media.ColorConverter.ConvertFromString("#64748B"));
|
||||
await System.Threading.Tasks.Task.Run(() =>
|
||||
{
|
||||
var result = UdpClientHolder.Instance.SendSync(new JObject { ["cmd"] = Config.Cmd["GET_4G_STATUS"] });
|
||||
Dispatcher.BeginInvoke(new Action(() =>
|
||||
{
|
||||
if (result.Value<bool>("success") && result["sim"] != null)
|
||||
{
|
||||
txtSim.Text = result.Value<string>("sim") ?? result.Value<string>("iccid") ?? "--";
|
||||
txtNetStatus.Text = result.Value<string>("net_status") ?? result.Value<string>("status_text") ?? "--";
|
||||
txtSignal.Text = result.Value<string>("signal") != null ? result.Value<int>("signal") + " dBm" : "--";
|
||||
txtIsp.Text = result.Value<string>("isp") ?? result.Value<string>("operator") ?? "--";
|
||||
txt4GStatus.Text = "";
|
||||
}
|
||||
else
|
||||
{
|
||||
txtSim.Text = "--"; txtNetStatus.Text = "--"; txtSignal.Text = "--"; txtIsp.Text = "--";
|
||||
ShowResult(txt4GStatus, result.Value<string>("error") ?? "查询超时", false);
|
||||
}
|
||||
}));
|
||||
});
|
||||
}
|
||||
|
||||
private void RefreshGwInfo_Click(object sender, RoutedEventArgs e) => RefreshGwInfo();
|
||||
private void Refresh4G_Click(object sender, RoutedEventArgs e) => Refresh4G();
|
||||
|
||||
private async void LoadCloudConfig_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
txtCloudResult.Text = "加载中...";
|
||||
txtCloudResult.Foreground = new System.Windows.Media.SolidColorBrush(
|
||||
(System.Windows.Media.Color)System.Windows.Media.ColorConverter.ConvertFromString("#64748B"));
|
||||
await System.Threading.Tasks.Task.Run(() =>
|
||||
{
|
||||
var result = UdpClientHolder.Instance.SendSync(new JObject { ["cmd"] = Config.Cmd["GET_CLOUD_CONFIG"] });
|
||||
Dispatcher.BeginInvoke(new Action(() =>
|
||||
{
|
||||
txtCloudResult.Text = "";
|
||||
if (result.Value<bool>("success") && result["host"] != null)
|
||||
{
|
||||
txtCloudHost.Text = result.Value<string>("host") ?? "";
|
||||
txtCloudPort.Text = result.Value<string>("port") ?? result.Value<int?>("port")?.ToString() ?? "";
|
||||
}
|
||||
else
|
||||
{
|
||||
ShowResult(txtCloudResult, result.Value<string>("error") ?? "查询超时", false);
|
||||
}
|
||||
}));
|
||||
});
|
||||
}
|
||||
|
||||
private async void SaveCloudConfig_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
string host = txtCloudHost.Text.Trim();
|
||||
string port = txtCloudPort.Text.Trim();
|
||||
|
||||
if (string.IsNullOrEmpty(host)) { ShowResult(txtCloudResult, "请输入服务器地址", false); return; }
|
||||
if (!IsValidHost(host)) { ShowResult(txtCloudResult, "地址格式错误", false); return; }
|
||||
if (string.IsNullOrEmpty(port) || !int.TryParse(port, out int p) || p < 1 || p > 65535)
|
||||
{ ShowResult(txtCloudResult, "端口范围 1-65535", false); return; }
|
||||
|
||||
ShowResult(txtCloudResult, "保存中...", true);
|
||||
await System.Threading.Tasks.Task.Run(() =>
|
||||
{
|
||||
var result = UdpClientHolder.Instance.SendSync(new JObject
|
||||
{
|
||||
["cmd"] = Config.Cmd["SET_CLOUD_CONFIG"],
|
||||
["host"] = host,
|
||||
["port"] = p
|
||||
});
|
||||
Dispatcher.BeginInvoke(new Action(() =>
|
||||
{
|
||||
ShowResult(txtCloudResult, result.Value<bool>("success") ? "保存成功" : (result.Value<string>("error") ?? "失败"), result.Value<bool>("success"));
|
||||
}));
|
||||
});
|
||||
}
|
||||
|
||||
private async void LoadNetConfig_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
txtNetResult.Text = "加载中...";
|
||||
txtNetResult.Foreground = new System.Windows.Media.SolidColorBrush(
|
||||
(System.Windows.Media.Color)System.Windows.Media.ColorConverter.ConvertFromString("#64748B"));
|
||||
await System.Threading.Tasks.Task.Run(() =>
|
||||
{
|
||||
var result = UdpClientHolder.Instance.SendSync(new JObject { ["cmd"] = Config.Cmd["GET_NET_CONFIG"] });
|
||||
Dispatcher.BeginInvoke(new Action(() =>
|
||||
{
|
||||
txtNetResult.Text = "";
|
||||
if (result.Value<bool>("success") && result["ip"] != null)
|
||||
{
|
||||
txtNetIp.Text = result.Value<string>("ip") ?? "";
|
||||
txtNetMask.Text = result.Value<string>("mask") ?? result.Value<string>("netmask") ?? "";
|
||||
txtNetGw.Text = result.Value<string>("gateway") ?? result.Value<string>("gw") ?? "";
|
||||
txtNetDns.Text = result.Value<string>("dns") ?? "";
|
||||
}
|
||||
else
|
||||
{
|
||||
ShowResult(txtNetResult, result.Value<string>("error") ?? "查询超时", false);
|
||||
}
|
||||
}));
|
||||
});
|
||||
}
|
||||
|
||||
private async void SaveNetConfig_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
string ip = txtNetIp.Text.Trim();
|
||||
string mask = txtNetMask.Text.Trim();
|
||||
string gw = txtNetGw.Text.Trim();
|
||||
string dns = txtNetDns.Text.Trim();
|
||||
|
||||
if (string.IsNullOrEmpty(ip)) { ShowResult(txtNetResult, "请输入IP地址", false); return; }
|
||||
if (!IsValidIp(ip)) { ShowResult(txtNetResult, "IP格式错误", false); return; }
|
||||
if (string.IsNullOrEmpty(mask)) { ShowResult(txtNetResult, "请输入子网掩码", false); return; }
|
||||
if (!IsValidIp(mask)) { ShowResult(txtNetResult, "掩码格式错误", false); return; }
|
||||
if (!string.IsNullOrEmpty(gw) && !IsValidIp(gw)) { ShowResult(txtNetResult, "网关格式错误", false); return; }
|
||||
if (!string.IsNullOrEmpty(dns) && !IsValidIp(dns)) { ShowResult(txtNetResult, "DNS格式错误", false); return; }
|
||||
|
||||
ShowResult(txtNetResult, "保存中...", true);
|
||||
await System.Threading.Tasks.Task.Run(() =>
|
||||
{
|
||||
var result = UdpClientHolder.Instance.SendSync(new JObject
|
||||
{
|
||||
["cmd"] = Config.Cmd["SET_NET_CONFIG"],
|
||||
["ip"] = ip,
|
||||
["mask"] = mask,
|
||||
["gateway"] = gw,
|
||||
["dns"] = dns
|
||||
});
|
||||
Dispatcher.BeginInvoke(new Action(() =>
|
||||
{
|
||||
ShowResult(txtNetResult, result.Value<bool>("success") ? "保存成功,重启生效" : (result.Value<string>("error") ?? "失败"), result.Value<bool>("success"));
|
||||
}));
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
170
上位机/YKC/Pages/RealtimePage.xaml
Normal file
170
上位机/YKC/Pages/RealtimePage.xaml
Normal file
@@ -0,0 +1,170 @@
|
||||
<Page x:Class="YKC.RealtimePage"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:oxy="http://oxyplot.org/wpf"
|
||||
Title="实时监控" Background="#F0F2F5">
|
||||
|
||||
<ScrollViewer VerticalScrollBarVisibility="Auto">
|
||||
<StackPanel Margin="20">
|
||||
<!-- 标题 + 选择器 -->
|
||||
<Grid Margin="0,0,0,12">
|
||||
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
|
||||
<TextBlock Text="实时监控" FontSize="16" FontWeight="SemiBold"
|
||||
Foreground="#1E293B"/>
|
||||
</StackPanel>
|
||||
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
|
||||
<TextBlock Text="桩" Foreground="#64748B" FontSize="13"
|
||||
VerticalAlignment="Center" Margin="0,0,6,0"/>
|
||||
<ComboBox x:Name="cmbPile" Style="{StaticResource StyledCombo}" Width="80"
|
||||
SelectedIndex="0" SelectionChanged="PileGun_Changed">
|
||||
<ComboBoxItem>桩 01</ComboBoxItem><ComboBoxItem>桩 02</ComboBoxItem>
|
||||
<ComboBoxItem>桩 03</ComboBoxItem><ComboBoxItem>桩 04</ComboBoxItem>
|
||||
<ComboBoxItem>桩 05</ComboBoxItem><ComboBoxItem>桩 06</ComboBoxItem>
|
||||
</ComboBox>
|
||||
<TextBlock Text="枪" Foreground="#64748B" FontSize="13"
|
||||
VerticalAlignment="Center" Margin="12,0,6,0"/>
|
||||
<ComboBox x:Name="cmbGun" Style="{StaticResource StyledCombo}" Width="70"
|
||||
SelectedIndex="0" SelectionChanged="PileGun_Changed">
|
||||
<ComboBoxItem>枪 1</ComboBoxItem><ComboBoxItem>枪 2</ComboBoxItem>
|
||||
</ComboBox>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
|
||||
<!-- 数值卡片行1 -->
|
||||
<WrapPanel Margin="0,0,0,6">
|
||||
<Border Background="White" CornerRadius="6" Width="170"
|
||||
Padding="14,12" Margin="0,0,8,8">
|
||||
<StackPanel>
|
||||
<TextBlock Text="电流 (A)" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtCurrent" Text="--" FontSize="22"
|
||||
FontWeight="SemiBold" Foreground="#10B981"/>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
<Border Background="White" CornerRadius="6" Width="170"
|
||||
Padding="14,12" Margin="0,0,8,8">
|
||||
<StackPanel>
|
||||
<TextBlock Text="电压 (V)" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtVoltage" Text="--" FontSize="22"
|
||||
FontWeight="SemiBold" Foreground="#1E293B"/>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
<Border Background="White" CornerRadius="6" Width="170"
|
||||
Padding="14,12" Margin="0,0,8,8">
|
||||
<StackPanel>
|
||||
<TextBlock Text="功率 (kW)" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtPower" Text="--" FontSize="22"
|
||||
FontWeight="SemiBold" Foreground="#1E293B"/>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
<Border Background="White" CornerRadius="6" Width="170"
|
||||
Padding="14,12" Margin="0,0,8,8">
|
||||
<StackPanel>
|
||||
<TextBlock Text="度数 (kWh)" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtEnergy" Text="--" FontSize="22"
|
||||
FontWeight="SemiBold" Foreground="#1E293B"/>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
<Border Background="White" CornerRadius="6" Width="170"
|
||||
Padding="14,12" Margin="0,0,8,8">
|
||||
<StackPanel>
|
||||
<TextBlock Text="总金额 (元)" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtTotalAmount" Text="--" FontSize="22"
|
||||
FontWeight="SemiBold" Foreground="#FF5722"/>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
<Border Background="White" CornerRadius="6" Width="150"
|
||||
Padding="14,12" Margin="0,0,8,8">
|
||||
<StackPanel>
|
||||
<TextBlock Text="状态" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtStatus" Text="--" FontSize="22"
|
||||
FontWeight="SemiBold" Foreground="#3B82F6"/>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</WrapPanel>
|
||||
|
||||
<!-- 订单信息行 -->
|
||||
<WrapPanel Margin="0,0,0,10">
|
||||
<Border Background="White" CornerRadius="6" Width="280"
|
||||
Padding="14,12" Margin="0,0,8,8">
|
||||
<StackPanel>
|
||||
<TextBlock Text="订单编号" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtOrderNo" Text="--" FontSize="13"
|
||||
FontWeight="SemiBold" Foreground="#1E293B"
|
||||
FontFamily="Consolas" TextWrapping="Wrap"/>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
<Border Background="White" CornerRadius="6" Width="140"
|
||||
Padding="14,12" Margin="0,0,8,8">
|
||||
<StackPanel>
|
||||
<TextBlock Text="目标 SOC" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtSoc" Text="--" FontSize="22"
|
||||
FontWeight="SemiBold" Foreground="#1E293B"/>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
<Border Background="White" CornerRadius="6" Width="180"
|
||||
Padding="14,12" Margin="0,0,8,8">
|
||||
<StackPanel>
|
||||
<TextBlock Text="累计充电时间" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtCumTime" Text="--" FontSize="18"
|
||||
FontWeight="SemiBold" Foreground="#1E293B"
|
||||
FontFamily="Consolas"/>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
<Border Background="White" CornerRadius="6" Width="180"
|
||||
Padding="14,12" Margin="0,0,8,8">
|
||||
<StackPanel>
|
||||
<TextBlock Text="剩余时间" Style="{StaticResource InfoLabel}"/>
|
||||
<TextBlock x:Name="txtRemTime" Text="--" FontSize="18"
|
||||
FontWeight="SemiBold" Foreground="#1E293B"
|
||||
FontFamily="Consolas"/>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</WrapPanel>
|
||||
|
||||
<!-- 图表 2x2 -->
|
||||
<Grid Height="580">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="290"/>
|
||||
<RowDefinition Height="290"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<Border Grid.Row="0" Grid.Column="0" Background="White" CornerRadius="6"
|
||||
Margin="0,0,7,7">
|
||||
<Grid>
|
||||
<TextBlock Text="电流曲线 (A)" Foreground="#94A3B8" FontSize="12"
|
||||
Margin="14,10,0,0" VerticalAlignment="Top"/>
|
||||
<oxy:PlotView x:Name="plotCurrent" Margin="8,32,8,8"/>
|
||||
</Grid>
|
||||
</Border>
|
||||
<Border Grid.Row="0" Grid.Column="1" Background="White" CornerRadius="6"
|
||||
Margin="7,0,0,7">
|
||||
<Grid>
|
||||
<TextBlock Text="电压曲线 (V)" Foreground="#94A3B8" FontSize="12"
|
||||
Margin="14,10,0,0" VerticalAlignment="Top"/>
|
||||
<oxy:PlotView x:Name="plotVoltage" Margin="8,32,8,8"/>
|
||||
</Grid>
|
||||
</Border>
|
||||
<Border Grid.Row="1" Grid.Column="0" Background="White" CornerRadius="6"
|
||||
Margin="0,7,7,0">
|
||||
<Grid>
|
||||
<TextBlock Text="功率曲线 (kW)" Foreground="#94A3B8" FontSize="12"
|
||||
Margin="14,10,0,0" VerticalAlignment="Top"/>
|
||||
<oxy:PlotView x:Name="plotPower" Margin="8,32,8,8"/>
|
||||
</Grid>
|
||||
</Border>
|
||||
<Border Grid.Row="1" Grid.Column="1" Background="White" CornerRadius="6"
|
||||
Margin="7,7,0,0">
|
||||
<Grid>
|
||||
<TextBlock Text="费用明细 (元)" Foreground="#94A3B8" FontSize="12"
|
||||
Margin="14,10,0,0" VerticalAlignment="Top"/>
|
||||
<oxy:PlotView x:Name="plotAmount" Margin="8,32,8,8"/>
|
||||
</Grid>
|
||||
</Border>
|
||||
</Grid>
|
||||
</StackPanel>
|
||||
</ScrollViewer>
|
||||
</Page>
|
||||
214
上位机/YKC/Pages/RealtimePage.xaml.cs
Normal file
214
上位机/YKC/Pages/RealtimePage.xaml.cs
Normal file
@@ -0,0 +1,214 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Media;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using OxyPlot;
|
||||
using OxyPlot.Axes;
|
||||
using OxyPlot.Series;
|
||||
|
||||
namespace YKC
|
||||
{
|
||||
public partial class RealtimePage : Page
|
||||
{
|
||||
private Timer _pollTimer;
|
||||
private int _currentPile = 1;
|
||||
private int _currentGun = 1;
|
||||
|
||||
public RealtimePage()
|
||||
{
|
||||
InitializeComponent();
|
||||
InitLinePlot(plotCurrent, OxyColor.Parse("#3B82F6"));
|
||||
InitLinePlot(plotVoltage, OxyColor.Parse("#8B5CF6"));
|
||||
InitLinePlot(plotPower, OxyColor.Parse("#F59E0B"));
|
||||
InitBarPlot(plotAmount);
|
||||
|
||||
Loaded += (s, e) =>
|
||||
{
|
||||
Dispatcher.BeginInvoke(new Action(RefreshData),
|
||||
System.Windows.Threading.DispatcherPriority.Background);
|
||||
_pollTimer = new Timer((_) =>
|
||||
Dispatcher.BeginInvoke(new Action(RefreshData)), null, 2000, 2000);
|
||||
};
|
||||
Unloaded += (s, e) => _pollTimer?.Dispose();
|
||||
}
|
||||
|
||||
private void InitLinePlot(OxyPlot.Wpf.PlotView pv, OxyColor color)
|
||||
{
|
||||
var model = new PlotModel { PlotAreaBorderColor = OxyColors.Transparent };
|
||||
model.Axes.Add(new DateTimeAxis
|
||||
{
|
||||
Position = AxisPosition.Bottom,
|
||||
TextColor = OxyColor.Parse("#94A3B8"),
|
||||
AxislineColor = OxyColor.Parse("#E2E8F0"),
|
||||
TicklineColor = OxyColor.Parse("#E2E8F0"),
|
||||
MajorGridlineColor = OxyColor.Parse("#F1F5F9"),
|
||||
StringFormat = "HH:mm:ss",
|
||||
FontSize = 10
|
||||
});
|
||||
model.Axes.Add(new LinearAxis
|
||||
{
|
||||
Position = AxisPosition.Left,
|
||||
TextColor = OxyColor.Parse("#94A3B8"),
|
||||
AxislineColor = OxyColors.Transparent,
|
||||
TicklineColor = OxyColors.Transparent,
|
||||
MajorGridlineStyle = LineStyle.Dash,
|
||||
MajorGridlineColor = OxyColor.Parse("#F1F5F9"),
|
||||
FontSize = 10,
|
||||
MinimumPadding = 0.1,
|
||||
MaximumPadding = 0.1
|
||||
});
|
||||
model.Series.Add(new LineSeries
|
||||
{
|
||||
Color = color,
|
||||
StrokeThickness = 2,
|
||||
MarkerType = MarkerType.None,
|
||||
CanTrackerInterpolatePoints = false
|
||||
});
|
||||
pv.Model = model;
|
||||
}
|
||||
|
||||
private void InitBarPlot(OxyPlot.Wpf.PlotView pv)
|
||||
{
|
||||
var model = new PlotModel { PlotAreaBorderColor = OxyColors.Transparent };
|
||||
var catAxis = new CategoryAxis
|
||||
{
|
||||
Position = AxisPosition.Bottom,
|
||||
TextColor = OxyColor.Parse("#64748B"),
|
||||
FontSize = 12,
|
||||
AxislineColor = OxyColor.Parse("#E2E8F0"),
|
||||
TicklineColor = OxyColor.Parse("#E2E8F0")
|
||||
};
|
||||
catAxis.Labels.Add("服务费");
|
||||
catAxis.Labels.Add("电费");
|
||||
catAxis.Labels.Add("总金额");
|
||||
model.Axes.Add(catAxis);
|
||||
model.Axes.Add(new LinearAxis
|
||||
{
|
||||
Position = AxisPosition.Left,
|
||||
Title = "元",
|
||||
TextColor = OxyColor.Parse("#94A3B8"),
|
||||
FontSize = 10,
|
||||
AxislineColor = OxyColors.Transparent,
|
||||
TicklineColor = OxyColors.Transparent,
|
||||
MajorGridlineStyle = LineStyle.Dash,
|
||||
MajorGridlineColor = OxyColor.Parse("#F1F5F9"),
|
||||
MinimumPadding = 0,
|
||||
MaximumPadding = 0.15
|
||||
});
|
||||
model.Series.Add(new RectangleBarSeries { FillColor = OxyColor.Parse("#1E9FFF") });
|
||||
model.Series.Add(new RectangleBarSeries { FillColor = OxyColor.Parse("#10B981") });
|
||||
model.Series.Add(new RectangleBarSeries { FillColor = OxyColor.Parse("#6366F1") });
|
||||
pv.Model = model;
|
||||
}
|
||||
|
||||
private void PileGun_Changed(object sender, SelectionChangedEventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (cmbPile == null || cmbGun == null) return;
|
||||
_currentPile = cmbPile.SelectedIndex + 1;
|
||||
_currentGun = cmbGun.SelectedIndex + 1;
|
||||
RefreshData();
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
private void RefreshData()
|
||||
{
|
||||
try
|
||||
{
|
||||
if (txtCurrent == null || plotCurrent == null || plotCurrent.Model == null) return;
|
||||
var latest = PilesStoreHolder.Instance.GetLatest(_currentPile, _currentGun);
|
||||
if (latest == null) return;
|
||||
|
||||
txtCurrent.Text = FormatValue(latest.Value<double?>("current")) + " A";
|
||||
txtVoltage.Text = FormatValue(latest.Value<double?>("voltage")) + " V";
|
||||
txtPower.Text = FormatValue(latest.Value<double?>("power")) + " kW";
|
||||
txtEnergy.Text = FormatValue(latest.Value<double?>("energy")) + " kWh";
|
||||
txtTotalAmount.Text = "¥ " + FormatValue(latest.Value<double?>("total_amount"));
|
||||
|
||||
int? st = latest.Value<int?>("status");
|
||||
if (st == 0) { txtStatus.Text = "离线"; txtStatus.Foreground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#909399")); }
|
||||
else if (st == 1) { txtStatus.Text = "故障"; txtStatus.Foreground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#EF4444")); }
|
||||
else if (st == 2) { txtStatus.Text = "空闲"; txtStatus.Foreground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#10B981")); }
|
||||
else if (st == 3) { txtStatus.Text = "充电中"; txtStatus.Foreground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#3B82F6")); }
|
||||
else { txtStatus.Text = "--"; }
|
||||
|
||||
txtOrderNo.Text = latest.Value<string>("order_no") ?? "--";
|
||||
txtSoc.Text = latest.Value<double?>("soc") != null ? latest.Value<double>("soc").ToString("F1") + "%" : "--";
|
||||
txtCumTime.Text = FormatMin(latest.Value<double?>("cumulative_time"));
|
||||
txtRemTime.Text = FormatMin(latest.Value<double?>("remaining_time"));
|
||||
|
||||
UpdateCharts();
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
private void UpdateCharts()
|
||||
{
|
||||
try
|
||||
{
|
||||
if (plotCurrent == null || plotCurrent.Model == null || plotCurrent.Model.Series.Count == 0) return;
|
||||
if (plotAmount == null || plotAmount.Model == null || plotAmount.Model.Series.Count == 0) return;
|
||||
|
||||
var chartData = PilesStoreHolder.Instance.GetChartData(_currentPile, _currentGun);
|
||||
if (chartData == null || chartData.Count == 0) return;
|
||||
|
||||
var curPoints = new List<DataPoint>();
|
||||
var volPoints = new List<DataPoint>();
|
||||
var powPoints = new List<DataPoint>();
|
||||
|
||||
foreach (var item in chartData)
|
||||
{
|
||||
long unixTs = item.Value<long>("t");
|
||||
var dt = DateTimeOffset.FromUnixTimeSeconds(unixTs).DateTime;
|
||||
double oxyTime = DateTimeAxis.ToDouble(dt);
|
||||
curPoints.Add(new DataPoint(oxyTime, item.Value<double?>("current") ?? 0));
|
||||
volPoints.Add(new DataPoint(oxyTime, item.Value<double?>("voltage") ?? 0));
|
||||
powPoints.Add(new DataPoint(oxyTime, item.Value<double?>("power") ?? 0));
|
||||
}
|
||||
|
||||
((LineSeries)plotCurrent.Model.Series[0]).Points.Clear();
|
||||
((LineSeries)plotCurrent.Model.Series[0]).Points.AddRange(curPoints);
|
||||
((LineSeries)plotVoltage.Model.Series[0]).Points.Clear();
|
||||
((LineSeries)plotVoltage.Model.Series[0]).Points.AddRange(volPoints);
|
||||
((LineSeries)plotPower.Model.Series[0]).Points.Clear();
|
||||
((LineSeries)plotPower.Model.Series[0]).Points.AddRange(powPoints);
|
||||
plotCurrent.InvalidatePlot(true);
|
||||
plotVoltage.InvalidatePlot(true);
|
||||
plotPower.InvalidatePlot(true);
|
||||
|
||||
var latest = PilesStoreHolder.Instance.GetLatest(_currentPile, _currentGun);
|
||||
if (latest != null)
|
||||
{
|
||||
double sf = latest.Value<double?>("service_fee") ?? 0;
|
||||
double ef = latest.Value<double?>("electricity_fee") ?? 0;
|
||||
double ta = latest.Value<double?>("total_amount") ?? 0;
|
||||
|
||||
((RectangleBarSeries)plotAmount.Model.Series[0]).Items.Clear();
|
||||
((RectangleBarSeries)plotAmount.Model.Series[0]).Items.Add(new RectangleBarItem(-0.25, 0, 0.25, sf));
|
||||
((RectangleBarSeries)plotAmount.Model.Series[1]).Items.Clear();
|
||||
((RectangleBarSeries)plotAmount.Model.Series[1]).Items.Add(new RectangleBarItem(0.75, 0, 1.25, ef));
|
||||
((RectangleBarSeries)plotAmount.Model.Series[2]).Items.Clear();
|
||||
((RectangleBarSeries)plotAmount.Model.Series[2]).Items.Add(new RectangleBarItem(1.75, 0, 2.25, ta));
|
||||
plotAmount.InvalidatePlot(true);
|
||||
}
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
private string FormatValue(double? v)
|
||||
{
|
||||
return v.HasValue ? v.Value.ToString("F2") : "--";
|
||||
}
|
||||
|
||||
private string FormatMin(double? v)
|
||||
{
|
||||
return v.HasValue ? Math.Round(v.Value).ToString() + " min" : "--";
|
||||
}
|
||||
}
|
||||
}
|
||||
174
上位机/YKC/PilesDataStore.cs
Normal file
174
上位机/YKC/PilesDataStore.cs
Normal file
@@ -0,0 +1,174 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Newtonsoft.Json.Linq;
|
||||
|
||||
namespace YKC
|
||||
{
|
||||
public class GunData
|
||||
{
|
||||
public List<double> Current { get; set; } = new List<double>();
|
||||
public List<double> Voltage { get; set; } = new List<double>();
|
||||
public List<double> Power { get; set; } = new List<double>();
|
||||
public List<double> Energy { get; set; } = new List<double>();
|
||||
public List<double> ServiceFee { get; set; } = new List<double>();
|
||||
public List<double> ElectricityFee { get; set; } = new List<double>();
|
||||
public List<double> TotalAmount { get; set; } = new List<double>();
|
||||
public List<int> Status { get; set; } = new List<int>();
|
||||
public List<DateTime> Timestamps { get; set; } = new List<DateTime>();
|
||||
|
||||
public string OrderNo { get; set; } = "";
|
||||
public double? Soc { get; set; } = null;
|
||||
public double? CumulativeTime { get; set; } = 0;
|
||||
public double? RemainingTime { get; set; } = 0;
|
||||
|
||||
private const int MaxPoints = 300;
|
||||
|
||||
private void AddToList<T>(List<T> list, T value)
|
||||
{
|
||||
list.Add(value);
|
||||
if (list.Count > MaxPoints)
|
||||
list.RemoveAt(0);
|
||||
}
|
||||
|
||||
public void Append(JObject g)
|
||||
{
|
||||
AddToList(Timestamps, DateTime.Now);
|
||||
AddToList(Current, g.Value<double?>("current") ?? double.NaN);
|
||||
AddToList(Voltage, g.Value<double?>("voltage") ?? double.NaN);
|
||||
AddToList(Power, g.Value<double?>("power") ?? double.NaN);
|
||||
AddToList(Energy, g.Value<double?>("energy") ?? double.NaN);
|
||||
AddToList(ServiceFee, g.Value<double?>("service_fee") ?? double.NaN);
|
||||
AddToList(ElectricityFee, g.Value<double?>("electricity_fee") ?? double.NaN);
|
||||
|
||||
double? total = g.Value<double?>("total_amount");
|
||||
if (total == null)
|
||||
{
|
||||
double? sf = g.Value<double?>("service_fee");
|
||||
double? ef = g.Value<double?>("electricity_fee");
|
||||
if (sf != null && ef != null)
|
||||
total = sf + ef;
|
||||
}
|
||||
AddToList(TotalAmount, total ?? double.NaN);
|
||||
|
||||
AddToList(Status, g.Value<int?>("status") ?? 0);
|
||||
|
||||
OrderNo = g.Value<string>("order_no") ?? OrderNo;
|
||||
Soc = g.Value<double?>("soc") ?? Soc;
|
||||
CumulativeTime = g.Value<double?>("cumulative_time") ?? CumulativeTime;
|
||||
RemainingTime = g.Value<double?>("remaining_time") ?? RemainingTime;
|
||||
}
|
||||
|
||||
public double? LatestOrNull(List<double> list)
|
||||
{
|
||||
for (int i = list.Count - 1; i >= 0; i--)
|
||||
if (!double.IsNaN(list[i])) return list[i];
|
||||
return null;
|
||||
}
|
||||
|
||||
public int? LatestStatus()
|
||||
{
|
||||
for (int i = Status.Count - 1; i >= 0; i--)
|
||||
return Status[i];
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public class PileData
|
||||
{
|
||||
public GunData Gun1 { get; set; } = new GunData();
|
||||
public GunData Gun2 { get; set; } = new GunData();
|
||||
}
|
||||
|
||||
public class PilesDataStore
|
||||
{
|
||||
private readonly object _lock = new object();
|
||||
public Dictionary<int, PileData> Piles { get; } = new Dictionary<int, PileData>();
|
||||
private const int PileCount = 6;
|
||||
|
||||
public PilesDataStore()
|
||||
{
|
||||
for (int i = 1; i <= PileCount; i++)
|
||||
Piles[i] = new PileData();
|
||||
}
|
||||
|
||||
public void HandleReport(JObject msg)
|
||||
{
|
||||
var pilesArr = msg["piles"] as JArray ?? msg["data"] as JArray;
|
||||
if (pilesArr == null) return;
|
||||
|
||||
lock (_lock)
|
||||
{
|
||||
foreach (var p in pilesArr)
|
||||
{
|
||||
int idx = p.Value<int?>("index") ?? p.Value<int?>("pile_index") ?? p.Value<int?>("id") ?? 0;
|
||||
if (idx < 1 || idx > PileCount) continue;
|
||||
|
||||
var gunsArr = p["guns"] as JArray;
|
||||
if (gunsArr == null)
|
||||
{
|
||||
Piles[idx].Gun1.Append((JObject)p);
|
||||
continue;
|
||||
}
|
||||
|
||||
foreach (var g in gunsArr)
|
||||
{
|
||||
int gunNum = g.Value<int?>("gun") ?? g.Value<int?>("gun_no") ?? g.Value<int?>("id") ?? 0;
|
||||
if (gunNum == 1) Piles[idx].Gun1.Append((JObject)g);
|
||||
else if (gunNum == 2) Piles[idx].Gun2.Append((JObject)g);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public JObject GetLatest(int pileIndex, int gunNum)
|
||||
{
|
||||
lock (_lock)
|
||||
{
|
||||
if (!Piles.ContainsKey(pileIndex)) return null;
|
||||
var gun = gunNum == 1 ? Piles[pileIndex].Gun1 : Piles[pileIndex].Gun2;
|
||||
return new JObject
|
||||
{
|
||||
["current"] = gun.LatestOrNull(gun.Current),
|
||||
["voltage"] = gun.LatestOrNull(gun.Voltage),
|
||||
["power"] = gun.LatestOrNull(gun.Power),
|
||||
["energy"] = gun.LatestOrNull(gun.Energy),
|
||||
["service_fee"] = gun.LatestOrNull(gun.ServiceFee),
|
||||
["electricity_fee"] = gun.LatestOrNull(gun.ElectricityFee),
|
||||
["total_amount"] = gun.LatestOrNull(gun.TotalAmount),
|
||||
["status"] = gun.LatestStatus(),
|
||||
["order_no"] = gun.OrderNo,
|
||||
["soc"] = gun.Soc,
|
||||
["cumulative_time"] = gun.CumulativeTime,
|
||||
["remaining_time"] = gun.RemainingTime,
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
public JArray GetChartData(int pileIndex, int gunNum)
|
||||
{
|
||||
lock (_lock)
|
||||
{
|
||||
if (!Piles.ContainsKey(pileIndex)) return null;
|
||||
var gun = gunNum == 1 ? Piles[pileIndex].Gun1 : Piles[pileIndex].Gun2;
|
||||
var arr = new JArray();
|
||||
for (int i = 0; i < gun.Timestamps.Count; i++)
|
||||
{
|
||||
arr.Add(new JObject
|
||||
{
|
||||
["t"] = new DateTimeOffset(gun.Timestamps[i]).ToUnixTimeSeconds(),
|
||||
["current"] = double.IsNaN(gun.Current[i]) ? (JToken)null : gun.Current[i],
|
||||
["voltage"] = double.IsNaN(gun.Voltage[i]) ? (JToken)null : gun.Voltage[i],
|
||||
["power"] = double.IsNaN(gun.Power[i]) ? (JToken)null : gun.Power[i],
|
||||
});
|
||||
}
|
||||
return arr;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static class PilesStoreHolder
|
||||
{
|
||||
public static readonly PilesDataStore Instance = new PilesDataStore();
|
||||
}
|
||||
}
|
||||
52
上位机/YKC/Properties/AssemblyInfo.cs
Normal file
52
上位机/YKC/Properties/AssemblyInfo.cs
Normal file
@@ -0,0 +1,52 @@
|
||||
using System.Reflection;
|
||||
using System.Resources;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Windows;
|
||||
|
||||
// 有关程序集的一般信息由以下
|
||||
// 控制。更改这些特性值可修改
|
||||
// 与程序集关联的信息。
|
||||
[assembly: AssemblyTitle("YKC")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("YKC")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2026")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// 将 ComVisible 设置为 false 会使此程序集中的类型
|
||||
//对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型
|
||||
//请将此类型的 ComVisible 特性设置为 true。
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
//若要开始生成可本地化的应用程序,请设置
|
||||
//.csproj 文件中的 <UICulture>CultureYouAreCodingWith</UICulture>
|
||||
//在 <PropertyGroup> 中。例如,如果你使用的是美国英语。
|
||||
//使用的是美国英语,请将 <UICulture> 设置为 en-US。 然后取消
|
||||
//对以下 NeutralResourceLanguage 特性的注释。 更新
|
||||
//以下行中的“en-US”以匹配项目文件中的 UICulture 设置。
|
||||
|
||||
//[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
|
||||
|
||||
|
||||
[assembly: ThemeInfo(
|
||||
ResourceDictionaryLocation.None, //主题特定资源词典所处位置
|
||||
//(未在页面中找到资源时使用,
|
||||
//或应用程序资源字典中找到时使用)
|
||||
ResourceDictionaryLocation.SourceAssembly //常规资源词典所处位置
|
||||
//(未在页面中找到资源时使用,
|
||||
//、应用程序或任何主题专用资源字典中找到时使用)
|
||||
)]
|
||||
|
||||
|
||||
// 程序集的版本信息由下列四个值组成:
|
||||
//
|
||||
// 主版本
|
||||
// 次版本
|
||||
// 生成号
|
||||
// 修订号
|
||||
//
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||
71
上位机/YKC/Properties/Resources.Designer.cs
generated
Normal file
71
上位机/YKC/Properties/Resources.Designer.cs
generated
Normal file
@@ -0,0 +1,71 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// 此代码由工具生成。
|
||||
// 运行时版本: 4.0.30319.42000
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace YKC.Properties
|
||||
{
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 强类型资源类,用于查找本地化字符串等。
|
||||
/// </summary>
|
||||
// 此类是由 StronglyTypedResourceBuilder
|
||||
// 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
|
||||
// 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen
|
||||
// (以 /str 作为命令选项),或重新生成 VS 项目。
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
internal class Resources
|
||||
{
|
||||
|
||||
private static global::System.Resources.ResourceManager resourceMan;
|
||||
|
||||
private static global::System.Globalization.CultureInfo resourceCulture;
|
||||
|
||||
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
|
||||
internal Resources()
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 返回此类使用的缓存 ResourceManager 实例。
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Resources.ResourceManager ResourceManager
|
||||
{
|
||||
get
|
||||
{
|
||||
if ((resourceMan == null))
|
||||
{
|
||||
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("YKC.Properties.Resources", typeof(Resources).Assembly);
|
||||
resourceMan = temp;
|
||||
}
|
||||
return resourceMan;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 重写当前线程的 CurrentUICulture 属性,对
|
||||
/// 使用此强类型资源类的所有资源查找执行重写。
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Globalization.CultureInfo Culture
|
||||
{
|
||||
get
|
||||
{
|
||||
return resourceCulture;
|
||||
}
|
||||
set
|
||||
{
|
||||
resourceCulture = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
117
上位机/YKC/Properties/Resources.resx
Normal file
117
上位机/YKC/Properties/Resources.resx
Normal file
@@ -0,0 +1,117 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
30
上位机/YKC/Properties/Settings.Designer.cs
generated
Normal file
30
上位机/YKC/Properties/Settings.Designer.cs
generated
Normal file
@@ -0,0 +1,30 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
// Runtime Version:4.0.30319.42000
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace YKC.Properties
|
||||
{
|
||||
|
||||
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
|
||||
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
|
||||
{
|
||||
|
||||
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||
|
||||
public static Settings Default
|
||||
{
|
||||
get
|
||||
{
|
||||
return defaultInstance;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
7
上位机/YKC/Properties/Settings.settings
Normal file
7
上位机/YKC/Properties/Settings.settings
Normal file
@@ -0,0 +1,7 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<SettingsFile xmlns="uri:settings" CurrentProfile="(Default)">
|
||||
<Profiles>
|
||||
<Profile Name="(Default)" />
|
||||
</Profiles>
|
||||
<Settings />
|
||||
</SettingsFile>
|
||||
170
上位机/YKC/UdpClient.cs
Normal file
170
上位机/YKC/UdpClient.cs
Normal file
@@ -0,0 +1,170 @@
|
||||
using System;
|
||||
using System.Collections.Concurrent;
|
||||
using System.Net;
|
||||
using System.Net.Sockets;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
|
||||
namespace YKC
|
||||
{
|
||||
public class UdpClient : IDisposable
|
||||
{
|
||||
private Socket _sock;
|
||||
private readonly object _lock = new object();
|
||||
private readonly ConcurrentDictionary<string, Action<JObject>> _callbacks = new ConcurrentDictionary<string, Action<JObject>>();
|
||||
private bool _running;
|
||||
private const int FixedId = 7;
|
||||
|
||||
public event Action<JObject> OnActiveReport;
|
||||
|
||||
public UdpClient()
|
||||
{
|
||||
try
|
||||
{
|
||||
_sock = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
|
||||
_sock.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true);
|
||||
_sock.Bind(new IPEndPoint(IPAddress.Any, Config.LocalPort));
|
||||
_sock.ReceiveTimeout = 1000;
|
||||
_running = true;
|
||||
Console.WriteLine($"[UDP] 监听端口 {Config.LocalPort}");
|
||||
Task.Run(() => ListenLoop());
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Console.WriteLine($"[UDP] 初始化失败: {e.Message}");
|
||||
}
|
||||
}
|
||||
|
||||
private void ListenLoop()
|
||||
{
|
||||
var buffer = new byte[4096];
|
||||
EndPoint remoteEp = new IPEndPoint(IPAddress.Any, 0);
|
||||
|
||||
while (_running)
|
||||
{
|
||||
try
|
||||
{
|
||||
int recv = _sock.ReceiveFrom(buffer, ref remoteEp);
|
||||
string json = Encoding.UTF8.GetString(buffer, 0, recv);
|
||||
var msg = JObject.Parse(json);
|
||||
Dispatch(msg);
|
||||
}
|
||||
catch (SocketException) { }
|
||||
catch (Exception e)
|
||||
{
|
||||
Console.WriteLine($"[UDP] 接收异常: {e.Message}");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void Dispatch(JObject msg)
|
||||
{
|
||||
string reqId = msg.Value<string>("request_id");
|
||||
Console.WriteLine($"[UDP] 收到回复: {msg}");
|
||||
|
||||
if (reqId != null && _callbacks.TryRemove(reqId, out var cb))
|
||||
{
|
||||
try { cb(msg); }
|
||||
catch (Exception e) { Console.WriteLine($"[UDP] 回调异常: {e.Message}"); }
|
||||
}
|
||||
else
|
||||
{
|
||||
HandleActiveReport(msg);
|
||||
}
|
||||
}
|
||||
|
||||
private void HandleActiveReport(JObject msg)
|
||||
{
|
||||
string cmd = msg.Value<string>("cmd");
|
||||
if (cmd == "report_data" || cmd == "pile_metrics" || cmd == "real_time_data")
|
||||
{
|
||||
Console.WriteLine($"[UDP] 收到主动上报, cmd={cmd}");
|
||||
OnActiveReport?.Invoke(msg);
|
||||
}
|
||||
}
|
||||
|
||||
public void Send(JObject payload, Action<JObject> callback = null, string requestId = null)
|
||||
{
|
||||
if (requestId == null)
|
||||
requestId = $"{payload.Value<string>("cmd")}_{DateTimeOffset.UtcNow.ToUnixTimeMilliseconds()}";
|
||||
|
||||
payload["id"] = FixedId;
|
||||
payload["request_id"] = requestId;
|
||||
|
||||
if (callback != null)
|
||||
{
|
||||
_callbacks[requestId] = callback;
|
||||
StartTimeoutCleaner(requestId);
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
if (_sock == null)
|
||||
{
|
||||
Console.WriteLine("[UDP] 套接字未就绪");
|
||||
callback?.Invoke(new JObject { ["success"] = false, ["error"] = "socket_not_ready", ["request_id"] = requestId });
|
||||
return;
|
||||
}
|
||||
byte[] data = Encoding.UTF8.GetBytes(payload.ToString(Formatting.None));
|
||||
_sock.SendTo(data, new IPEndPoint(IPAddress.Parse(Config.TargetIp), Config.TargetPort));
|
||||
Console.WriteLine($"[UDP] 发送: {payload}");
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Console.WriteLine($"[UDP] 发送失败: {e.Message}");
|
||||
_callbacks.TryRemove(requestId, out _);
|
||||
}
|
||||
}
|
||||
|
||||
public JObject SendSync(JObject payload, int timeoutSec = 4)
|
||||
{
|
||||
JObject result = null;
|
||||
var evt = new ManualResetEvent(false);
|
||||
|
||||
Send(payload, (msg) =>
|
||||
{
|
||||
result = msg;
|
||||
evt.Set();
|
||||
});
|
||||
|
||||
evt.WaitOne(TimeSpan.FromSeconds(timeoutSec));
|
||||
return result ?? new JObject { ["success"] = false, ["error"] = "设备无响应" };
|
||||
}
|
||||
|
||||
private void StartTimeoutCleaner(string requestId)
|
||||
{
|
||||
Task.Run(async () =>
|
||||
{
|
||||
await Task.Delay(TimeSpan.FromSeconds(Config.UdpTimeout));
|
||||
if (_callbacks.TryRemove(requestId, out var cb))
|
||||
{
|
||||
Console.WriteLine($"[UDP] 请求超时: {requestId}");
|
||||
try
|
||||
{
|
||||
cb(new JObject
|
||||
{
|
||||
["success"] = false,
|
||||
["error"] = "timeout",
|
||||
["request_id"] = requestId
|
||||
});
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
_running = false;
|
||||
_sock?.Close();
|
||||
}
|
||||
}
|
||||
|
||||
public static class UdpClientHolder
|
||||
{
|
||||
public static readonly UdpClient Instance = new UdpClient();
|
||||
}
|
||||
}
|
||||
152
上位机/YKC/YKC.csproj
Normal file
152
上位机/YKC/YKC.csproj
Normal file
@@ -0,0 +1,152 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{9F34DD1F-FB6D-4E13-9270-13C7A9A87AAA}</ProjectGuid>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<RootNamespace>YKC</RootNamespace>
|
||||
<AssemblyName>YKC</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||
<Deterministic>true</Deterministic>
|
||||
<RestoreProjectStyle>PackageReference</RestoreProjectStyle>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Xaml">
|
||||
<RequiredTargetFramework>4.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="WindowsBase" />
|
||||
<Reference Include="PresentationCore" />
|
||||
<Reference Include="PresentationFramework" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="OxyPlot.Wpf">
|
||||
<Version>2.2.0</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Newtonsoft.Json">
|
||||
<Version>13.0.3</Version>
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ApplicationDefinition Include="App.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</ApplicationDefinition>
|
||||
<Page Include="MainWindow.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Compile Include="App.xaml.cs">
|
||||
<DependentUpon>App.xaml</DependentUpon>
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="MainWindow.xaml.cs">
|
||||
<DependentUpon>MainWindow.xaml</DependentUpon>
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Page Include="LoginWindow.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Compile Include="LoginWindow.xaml.cs">
|
||||
<DependentUpon>LoginWindow.xaml</DependentUpon>
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Page Include="Pages\DashboardPage.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Compile Include="Pages\DashboardPage.xaml.cs">
|
||||
<DependentUpon>Pages\DashboardPage.xaml</DependentUpon>
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Page Include="Pages\RealtimePage.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Compile Include="Pages\RealtimePage.xaml.cs">
|
||||
<DependentUpon>Pages\RealtimePage.xaml</DependentUpon>
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Page Include="Pages\ChargerPage.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Compile Include="Pages\ChargerPage.xaml.cs">
|
||||
<DependentUpon>Pages\ChargerPage.xaml</DependentUpon>
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Page Include="Pages\GatewayPage.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Compile Include="Pages\GatewayPage.xaml.cs">
|
||||
<DependentUpon>Pages\GatewayPage.xaml</DependentUpon>
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Config.cs" />
|
||||
<Compile Include="UdpClient.cs" />
|
||||
<Compile Include="PilesDataStore.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Properties\AssemblyInfo.cs">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Properties\Resources.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DesignTime>True</DesignTime>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Properties\Settings.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
</Compile>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
</EmbeddedResource>
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="App.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
</Project>
|
||||
3
上位机/YKC/YKC.slnx
Normal file
3
上位机/YKC/YKC.slnx
Normal file
@@ -0,0 +1,3 @@
|
||||
<Solution>
|
||||
<Project Path="YKC.csproj" Id="9f34dd1f-fb6d-4e13-9270-13c7a9a87aaa" />
|
||||
</Solution>
|
||||
BIN
上位机/YKC/bin/Debug/Newtonsoft.Json.dll
Normal file
BIN
上位机/YKC/bin/Debug/Newtonsoft.Json.dll
Normal file
Binary file not shown.
BIN
上位机/YKC/bin/Debug/OxyPlot.Wpf.Shared.dll
Normal file
BIN
上位机/YKC/bin/Debug/OxyPlot.Wpf.Shared.dll
Normal file
Binary file not shown.
BIN
上位机/YKC/bin/Debug/OxyPlot.Wpf.dll
Normal file
BIN
上位机/YKC/bin/Debug/OxyPlot.Wpf.dll
Normal file
Binary file not shown.
BIN
上位机/YKC/bin/Debug/OxyPlot.dll
Normal file
BIN
上位机/YKC/bin/Debug/OxyPlot.dll
Normal file
Binary file not shown.
BIN
上位机/YKC/bin/Debug/YKC.exe
Normal file
BIN
上位机/YKC/bin/Debug/YKC.exe
Normal file
Binary file not shown.
6
上位机/YKC/bin/Debug/YKC.exe.config
Normal file
6
上位机/YKC/bin/Debug/YKC.exe.config
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<configuration>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
|
||||
</startup>
|
||||
</configuration>
|
||||
BIN
上位机/YKC/bin/Debug/YKC.pdb
Normal file
BIN
上位机/YKC/bin/Debug/YKC.pdb
Normal file
Binary file not shown.
BIN
上位机/YKC/nuget.exe
Normal file
BIN
上位机/YKC/nuget.exe
Normal file
Binary file not shown.
@@ -0,0 +1,4 @@
|
||||
// <autogenerated />
|
||||
using System;
|
||||
using System.Reflection;
|
||||
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")]
|
||||
BIN
上位机/YKC/obj/Debug/App.baml
Normal file
BIN
上位机/YKC/obj/Debug/App.baml
Normal file
Binary file not shown.
82
上位机/YKC/obj/Debug/App.g.cs
Normal file
82
上位机/YKC/obj/Debug/App.g.cs
Normal file
@@ -0,0 +1,82 @@
|
||||
#pragma checksum "..\..\App.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "6AD4E2C6807A155B5F2677B4A8772DA510C0A9A2F8A7C4909C202DC219BF4813"
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// 此代码由工具生成。
|
||||
// 运行时版本:4.0.30319.42000
|
||||
//
|
||||
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
// 重新生成代码,这些更改将会丢失。
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Windows;
|
||||
using System.Windows.Automation;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Controls.Primitives;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Ink;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Markup;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Animation;
|
||||
using System.Windows.Media.Effects;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Media.Media3D;
|
||||
using System.Windows.Media.TextFormatting;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
using System.Windows.Shell;
|
||||
|
||||
|
||||
namespace YKC {
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// App
|
||||
/// </summary>
|
||||
public partial class App : System.Windows.Application {
|
||||
|
||||
private bool _contentLoaded;
|
||||
|
||||
/// <summary>
|
||||
/// InitializeComponent
|
||||
/// </summary>
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
public void InitializeComponent() {
|
||||
if (_contentLoaded) {
|
||||
return;
|
||||
}
|
||||
_contentLoaded = true;
|
||||
|
||||
#line 4 "..\..\App.xaml"
|
||||
this.StartupUri = new System.Uri("LoginWindow.xaml", System.UriKind.Relative);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
System.Uri resourceLocater = new System.Uri("/YKC;component/app.xaml", System.UriKind.Relative);
|
||||
|
||||
#line 1 "..\..\App.xaml"
|
||||
System.Windows.Application.LoadComponent(this, resourceLocater);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Application Entry Point.
|
||||
/// </summary>
|
||||
[System.STAThreadAttribute()]
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
public static void Main() {
|
||||
YKC.App app = new YKC.App();
|
||||
app.InitializeComponent();
|
||||
app.Run();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
82
上位机/YKC/obj/Debug/App.g.i.cs
Normal file
82
上位机/YKC/obj/Debug/App.g.i.cs
Normal file
@@ -0,0 +1,82 @@
|
||||
#pragma checksum "..\..\App.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "6AD4E2C6807A155B5F2677B4A8772DA510C0A9A2F8A7C4909C202DC219BF4813"
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// 此代码由工具生成。
|
||||
// 运行时版本:4.0.30319.42000
|
||||
//
|
||||
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
// 重新生成代码,这些更改将会丢失。
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Windows;
|
||||
using System.Windows.Automation;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Controls.Primitives;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Ink;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Markup;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Animation;
|
||||
using System.Windows.Media.Effects;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Media.Media3D;
|
||||
using System.Windows.Media.TextFormatting;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
using System.Windows.Shell;
|
||||
|
||||
|
||||
namespace YKC {
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// App
|
||||
/// </summary>
|
||||
public partial class App : System.Windows.Application {
|
||||
|
||||
private bool _contentLoaded;
|
||||
|
||||
/// <summary>
|
||||
/// InitializeComponent
|
||||
/// </summary>
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
public void InitializeComponent() {
|
||||
if (_contentLoaded) {
|
||||
return;
|
||||
}
|
||||
_contentLoaded = true;
|
||||
|
||||
#line 4 "..\..\App.xaml"
|
||||
this.StartupUri = new System.Uri("LoginWindow.xaml", System.UriKind.Relative);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
System.Uri resourceLocater = new System.Uri("/YKC;component/app.xaml", System.UriKind.Relative);
|
||||
|
||||
#line 1 "..\..\App.xaml"
|
||||
System.Windows.Application.LoadComponent(this, resourceLocater);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Application Entry Point.
|
||||
/// </summary>
|
||||
[System.STAThreadAttribute()]
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
public static void Main() {
|
||||
YKC.App app = new YKC.App();
|
||||
app.InitializeComponent();
|
||||
app.Run();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
BIN
上位机/YKC/obj/Debug/DesignTimeResolveAssemblyReferences.cache
Normal file
BIN
上位机/YKC/obj/Debug/DesignTimeResolveAssemblyReferences.cache
Normal file
Binary file not shown.
BIN
上位机/YKC/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
Normal file
BIN
上位机/YKC/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
Normal file
Binary file not shown.
BIN
上位机/YKC/obj/Debug/LoginWindow.baml
Normal file
BIN
上位机/YKC/obj/Debug/LoginWindow.baml
Normal file
Binary file not shown.
127
上位机/YKC/obj/Debug/LoginWindow.g.cs
Normal file
127
上位机/YKC/obj/Debug/LoginWindow.g.cs
Normal file
@@ -0,0 +1,127 @@
|
||||
#pragma checksum "..\..\LoginWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "0FC0E565435A8BC0FBD8D62E4120A53F6C01B21198BAFAC45DE921A44D172582"
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// 此代码由工具生成。
|
||||
// 运行时版本:4.0.30319.42000
|
||||
//
|
||||
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
// 重新生成代码,这些更改将会丢失。
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Windows;
|
||||
using System.Windows.Automation;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Controls.Primitives;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Ink;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Markup;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Animation;
|
||||
using System.Windows.Media.Effects;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Media.Media3D;
|
||||
using System.Windows.Media.TextFormatting;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
using System.Windows.Shell;
|
||||
|
||||
|
||||
namespace YKC {
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// LoginWindow
|
||||
/// </summary>
|
||||
public partial class LoginWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
|
||||
|
||||
|
||||
#line 24 "..\..\LoginWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtUsername;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 28 "..\..\LoginWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.PasswordBox txtPassword;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 30 "..\..\LoginWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.Button btnLogin;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 35 "..\..\LoginWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtError;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
private bool _contentLoaded;
|
||||
|
||||
/// <summary>
|
||||
/// InitializeComponent
|
||||
/// </summary>
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
public void InitializeComponent() {
|
||||
if (_contentLoaded) {
|
||||
return;
|
||||
}
|
||||
_contentLoaded = true;
|
||||
System.Uri resourceLocater = new System.Uri("/YKC;component/loginwindow.xaml", System.UriKind.Relative);
|
||||
|
||||
#line 1 "..\..\LoginWindow.xaml"
|
||||
System.Windows.Application.LoadComponent(this, resourceLocater);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
}
|
||||
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
|
||||
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
|
||||
switch (connectionId)
|
||||
{
|
||||
case 1:
|
||||
this.txtUsername = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 2:
|
||||
this.txtPassword = ((System.Windows.Controls.PasswordBox)(target));
|
||||
return;
|
||||
case 3:
|
||||
this.btnLogin = ((System.Windows.Controls.Button)(target));
|
||||
|
||||
#line 33 "..\..\LoginWindow.xaml"
|
||||
this.btnLogin.Click += new System.Windows.RoutedEventHandler(this.Login_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 4:
|
||||
this.txtError = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
}
|
||||
this._contentLoaded = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
127
上位机/YKC/obj/Debug/LoginWindow.g.i.cs
Normal file
127
上位机/YKC/obj/Debug/LoginWindow.g.i.cs
Normal file
@@ -0,0 +1,127 @@
|
||||
#pragma checksum "..\..\LoginWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "0FC0E565435A8BC0FBD8D62E4120A53F6C01B21198BAFAC45DE921A44D172582"
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// 此代码由工具生成。
|
||||
// 运行时版本:4.0.30319.42000
|
||||
//
|
||||
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
// 重新生成代码,这些更改将会丢失。
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Windows;
|
||||
using System.Windows.Automation;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Controls.Primitives;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Ink;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Markup;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Animation;
|
||||
using System.Windows.Media.Effects;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Media.Media3D;
|
||||
using System.Windows.Media.TextFormatting;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
using System.Windows.Shell;
|
||||
|
||||
|
||||
namespace YKC {
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// LoginWindow
|
||||
/// </summary>
|
||||
public partial class LoginWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
|
||||
|
||||
|
||||
#line 24 "..\..\LoginWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtUsername;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 28 "..\..\LoginWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.PasswordBox txtPassword;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 30 "..\..\LoginWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.Button btnLogin;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 35 "..\..\LoginWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtError;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
private bool _contentLoaded;
|
||||
|
||||
/// <summary>
|
||||
/// InitializeComponent
|
||||
/// </summary>
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
public void InitializeComponent() {
|
||||
if (_contentLoaded) {
|
||||
return;
|
||||
}
|
||||
_contentLoaded = true;
|
||||
System.Uri resourceLocater = new System.Uri("/YKC;component/loginwindow.xaml", System.UriKind.Relative);
|
||||
|
||||
#line 1 "..\..\LoginWindow.xaml"
|
||||
System.Windows.Application.LoadComponent(this, resourceLocater);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
}
|
||||
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
|
||||
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
|
||||
switch (connectionId)
|
||||
{
|
||||
case 1:
|
||||
this.txtUsername = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 2:
|
||||
this.txtPassword = ((System.Windows.Controls.PasswordBox)(target));
|
||||
return;
|
||||
case 3:
|
||||
this.btnLogin = ((System.Windows.Controls.Button)(target));
|
||||
|
||||
#line 33 "..\..\LoginWindow.xaml"
|
||||
this.btnLogin.Click += new System.Windows.RoutedEventHandler(this.Login_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 4:
|
||||
this.txtError = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
}
|
||||
this._contentLoaded = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
BIN
上位机/YKC/obj/Debug/MainWindow.baml
Normal file
BIN
上位机/YKC/obj/Debug/MainWindow.baml
Normal file
Binary file not shown.
194
上位机/YKC/obj/Debug/MainWindow.g.cs
Normal file
194
上位机/YKC/obj/Debug/MainWindow.g.cs
Normal file
@@ -0,0 +1,194 @@
|
||||
#pragma checksum "..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "971CC5B57AF7C8C90EEFD1CD5BF5F4033C0F29A3DDEBC4D68144258B257B7158"
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// 此代码由工具生成。
|
||||
// 运行时版本:4.0.30319.42000
|
||||
//
|
||||
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
// 重新生成代码,这些更改将会丢失。
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Windows;
|
||||
using System.Windows.Automation;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Controls.Primitives;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Ink;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Markup;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Animation;
|
||||
using System.Windows.Media.Effects;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Media.Media3D;
|
||||
using System.Windows.Media.TextFormatting;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
using System.Windows.Shell;
|
||||
|
||||
|
||||
namespace YKC {
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// MainWindow
|
||||
/// </summary>
|
||||
public partial class MainWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
|
||||
|
||||
|
||||
#line 34 "..\..\MainWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.Button btnDashboard;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 37 "..\..\MainWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.Button btnRealtime;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 40 "..\..\MainWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.Button btnCharger;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 43 "..\..\MainWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.Button btnGateway;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 61 "..\..\MainWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtPageTitle;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 65 "..\..\MainWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtUser;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 74 "..\..\MainWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.Frame contentFrame;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
private bool _contentLoaded;
|
||||
|
||||
/// <summary>
|
||||
/// InitializeComponent
|
||||
/// </summary>
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
public void InitializeComponent() {
|
||||
if (_contentLoaded) {
|
||||
return;
|
||||
}
|
||||
_contentLoaded = true;
|
||||
System.Uri resourceLocater = new System.Uri("/YKC;component/mainwindow.xaml", System.UriKind.Relative);
|
||||
|
||||
#line 1 "..\..\MainWindow.xaml"
|
||||
System.Windows.Application.LoadComponent(this, resourceLocater);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
}
|
||||
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
|
||||
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
|
||||
switch (connectionId)
|
||||
{
|
||||
case 1:
|
||||
|
||||
#line 28 "..\..\MainWindow.xaml"
|
||||
((System.Windows.Controls.Border)(target)).MouseLeftButtonDown += new System.Windows.Input.MouseButtonEventHandler(this.Header_MouseDown);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 2:
|
||||
this.btnDashboard = ((System.Windows.Controls.Button)(target));
|
||||
|
||||
#line 35 "..\..\MainWindow.xaml"
|
||||
this.btnDashboard.Click += new System.Windows.RoutedEventHandler(this.NavButton_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 3:
|
||||
this.btnRealtime = ((System.Windows.Controls.Button)(target));
|
||||
|
||||
#line 38 "..\..\MainWindow.xaml"
|
||||
this.btnRealtime.Click += new System.Windows.RoutedEventHandler(this.NavButton_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 4:
|
||||
this.btnCharger = ((System.Windows.Controls.Button)(target));
|
||||
|
||||
#line 41 "..\..\MainWindow.xaml"
|
||||
this.btnCharger.Click += new System.Windows.RoutedEventHandler(this.NavButton_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 5:
|
||||
this.btnGateway = ((System.Windows.Controls.Button)(target));
|
||||
|
||||
#line 44 "..\..\MainWindow.xaml"
|
||||
this.btnGateway.Click += new System.Windows.RoutedEventHandler(this.NavButton_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 6:
|
||||
this.txtPageTitle = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 7:
|
||||
this.txtUser = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 8:
|
||||
|
||||
#line 68 "..\..\MainWindow.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Logout_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 9:
|
||||
this.contentFrame = ((System.Windows.Controls.Frame)(target));
|
||||
return;
|
||||
}
|
||||
this._contentLoaded = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
194
上位机/YKC/obj/Debug/MainWindow.g.i.cs
Normal file
194
上位机/YKC/obj/Debug/MainWindow.g.i.cs
Normal file
@@ -0,0 +1,194 @@
|
||||
#pragma checksum "..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "971CC5B57AF7C8C90EEFD1CD5BF5F4033C0F29A3DDEBC4D68144258B257B7158"
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// 此代码由工具生成。
|
||||
// 运行时版本:4.0.30319.42000
|
||||
//
|
||||
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
// 重新生成代码,这些更改将会丢失。
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Windows;
|
||||
using System.Windows.Automation;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Controls.Primitives;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Ink;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Markup;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Animation;
|
||||
using System.Windows.Media.Effects;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Media.Media3D;
|
||||
using System.Windows.Media.TextFormatting;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
using System.Windows.Shell;
|
||||
|
||||
|
||||
namespace YKC {
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// MainWindow
|
||||
/// </summary>
|
||||
public partial class MainWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
|
||||
|
||||
|
||||
#line 34 "..\..\MainWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.Button btnDashboard;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 37 "..\..\MainWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.Button btnRealtime;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 40 "..\..\MainWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.Button btnCharger;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 43 "..\..\MainWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.Button btnGateway;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 61 "..\..\MainWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtPageTitle;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 65 "..\..\MainWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtUser;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 74 "..\..\MainWindow.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.Frame contentFrame;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
private bool _contentLoaded;
|
||||
|
||||
/// <summary>
|
||||
/// InitializeComponent
|
||||
/// </summary>
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
public void InitializeComponent() {
|
||||
if (_contentLoaded) {
|
||||
return;
|
||||
}
|
||||
_contentLoaded = true;
|
||||
System.Uri resourceLocater = new System.Uri("/YKC;component/mainwindow.xaml", System.UriKind.Relative);
|
||||
|
||||
#line 1 "..\..\MainWindow.xaml"
|
||||
System.Windows.Application.LoadComponent(this, resourceLocater);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
}
|
||||
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
|
||||
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
|
||||
switch (connectionId)
|
||||
{
|
||||
case 1:
|
||||
|
||||
#line 28 "..\..\MainWindow.xaml"
|
||||
((System.Windows.Controls.Border)(target)).MouseLeftButtonDown += new System.Windows.Input.MouseButtonEventHandler(this.Header_MouseDown);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 2:
|
||||
this.btnDashboard = ((System.Windows.Controls.Button)(target));
|
||||
|
||||
#line 35 "..\..\MainWindow.xaml"
|
||||
this.btnDashboard.Click += new System.Windows.RoutedEventHandler(this.NavButton_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 3:
|
||||
this.btnRealtime = ((System.Windows.Controls.Button)(target));
|
||||
|
||||
#line 38 "..\..\MainWindow.xaml"
|
||||
this.btnRealtime.Click += new System.Windows.RoutedEventHandler(this.NavButton_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 4:
|
||||
this.btnCharger = ((System.Windows.Controls.Button)(target));
|
||||
|
||||
#line 41 "..\..\MainWindow.xaml"
|
||||
this.btnCharger.Click += new System.Windows.RoutedEventHandler(this.NavButton_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 5:
|
||||
this.btnGateway = ((System.Windows.Controls.Button)(target));
|
||||
|
||||
#line 44 "..\..\MainWindow.xaml"
|
||||
this.btnGateway.Click += new System.Windows.RoutedEventHandler(this.NavButton_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 6:
|
||||
this.txtPageTitle = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 7:
|
||||
this.txtUser = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 8:
|
||||
|
||||
#line 68 "..\..\MainWindow.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Logout_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 9:
|
||||
this.contentFrame = ((System.Windows.Controls.Frame)(target));
|
||||
return;
|
||||
}
|
||||
this._contentLoaded = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
BIN
上位机/YKC/obj/Debug/Pages/ChargerPage.baml
Normal file
BIN
上位机/YKC/obj/Debug/Pages/ChargerPage.baml
Normal file
Binary file not shown.
244
上位机/YKC/obj/Debug/Pages/ChargerPage.g.cs
Normal file
244
上位机/YKC/obj/Debug/Pages/ChargerPage.g.cs
Normal file
@@ -0,0 +1,244 @@
|
||||
#pragma checksum "..\..\..\Pages\ChargerPage.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "C0301C7F4B365AA464333B677A7BAC04916A4E141B083003114E616F02126402"
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// 此代码由工具生成。
|
||||
// 运行时版本:4.0.30319.42000
|
||||
//
|
||||
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
// 重新生成代码,这些更改将会丢失。
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Windows;
|
||||
using System.Windows.Automation;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Controls.Primitives;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Ink;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Markup;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Animation;
|
||||
using System.Windows.Media.Effects;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Media.Media3D;
|
||||
using System.Windows.Media.TextFormatting;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
using System.Windows.Shell;
|
||||
|
||||
|
||||
namespace YKC {
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ChargerPage
|
||||
/// </summary>
|
||||
public partial class ChargerPage : System.Windows.Controls.Page, System.Windows.Markup.IComponentConnector {
|
||||
|
||||
|
||||
#line 25 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtSetPileIdx;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 29 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtSetPileId;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 36 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtSetResult;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 51 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtInfoPileIdx;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 55 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtInfoResult;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 60 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.Border panelInfo;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 64 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtInfoSerial;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 66 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtInfoType;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 68 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtInfoGuns;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 70 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtInfoProto;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 72 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtInfoSw;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 74 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtInfoSim;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 89 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtRebootResult;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
private bool _contentLoaded;
|
||||
|
||||
/// <summary>
|
||||
/// InitializeComponent
|
||||
/// </summary>
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
public void InitializeComponent() {
|
||||
if (_contentLoaded) {
|
||||
return;
|
||||
}
|
||||
_contentLoaded = true;
|
||||
System.Uri resourceLocater = new System.Uri("/YKC;component/pages/chargerpage.xaml", System.UriKind.Relative);
|
||||
|
||||
#line 1 "..\..\..\Pages\ChargerPage.xaml"
|
||||
System.Windows.Application.LoadComponent(this, resourceLocater);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
}
|
||||
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
|
||||
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
|
||||
switch (connectionId)
|
||||
{
|
||||
case 1:
|
||||
this.txtSetPileIdx = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 2:
|
||||
this.txtSetPileId = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 3:
|
||||
|
||||
#line 35 "..\..\..\Pages\ChargerPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.SetPileId_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 4:
|
||||
this.txtSetResult = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 5:
|
||||
this.txtInfoPileIdx = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 6:
|
||||
|
||||
#line 54 "..\..\..\Pages\ChargerPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.GetPileInfo_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 7:
|
||||
this.txtInfoResult = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 8:
|
||||
this.panelInfo = ((System.Windows.Controls.Border)(target));
|
||||
return;
|
||||
case 9:
|
||||
this.txtInfoSerial = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 10:
|
||||
this.txtInfoType = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 11:
|
||||
this.txtInfoGuns = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 12:
|
||||
this.txtInfoProto = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 13:
|
||||
this.txtInfoSw = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 14:
|
||||
this.txtInfoSim = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 15:
|
||||
|
||||
#line 88 "..\..\..\Pages\ChargerPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Reboot_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 16:
|
||||
this.txtRebootResult = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
}
|
||||
this._contentLoaded = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
244
上位机/YKC/obj/Debug/Pages/ChargerPage.g.i.cs
Normal file
244
上位机/YKC/obj/Debug/Pages/ChargerPage.g.i.cs
Normal file
@@ -0,0 +1,244 @@
|
||||
#pragma checksum "..\..\..\Pages\ChargerPage.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "C0301C7F4B365AA464333B677A7BAC04916A4E141B083003114E616F02126402"
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// 此代码由工具生成。
|
||||
// 运行时版本:4.0.30319.42000
|
||||
//
|
||||
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
// 重新生成代码,这些更改将会丢失。
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Windows;
|
||||
using System.Windows.Automation;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Controls.Primitives;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Ink;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Markup;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Animation;
|
||||
using System.Windows.Media.Effects;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Media.Media3D;
|
||||
using System.Windows.Media.TextFormatting;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
using System.Windows.Shell;
|
||||
|
||||
|
||||
namespace YKC {
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ChargerPage
|
||||
/// </summary>
|
||||
public partial class ChargerPage : System.Windows.Controls.Page, System.Windows.Markup.IComponentConnector {
|
||||
|
||||
|
||||
#line 25 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtSetPileIdx;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 29 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtSetPileId;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 36 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtSetResult;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 51 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtInfoPileIdx;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 55 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtInfoResult;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 60 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.Border panelInfo;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 64 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtInfoSerial;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 66 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtInfoType;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 68 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtInfoGuns;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 70 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtInfoProto;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 72 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtInfoSw;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 74 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtInfoSim;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 89 "..\..\..\Pages\ChargerPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtRebootResult;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
private bool _contentLoaded;
|
||||
|
||||
/// <summary>
|
||||
/// InitializeComponent
|
||||
/// </summary>
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
public void InitializeComponent() {
|
||||
if (_contentLoaded) {
|
||||
return;
|
||||
}
|
||||
_contentLoaded = true;
|
||||
System.Uri resourceLocater = new System.Uri("/YKC;component/pages/chargerpage.xaml", System.UriKind.Relative);
|
||||
|
||||
#line 1 "..\..\..\Pages\ChargerPage.xaml"
|
||||
System.Windows.Application.LoadComponent(this, resourceLocater);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
}
|
||||
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
|
||||
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
|
||||
switch (connectionId)
|
||||
{
|
||||
case 1:
|
||||
this.txtSetPileIdx = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 2:
|
||||
this.txtSetPileId = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 3:
|
||||
|
||||
#line 35 "..\..\..\Pages\ChargerPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.SetPileId_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 4:
|
||||
this.txtSetResult = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 5:
|
||||
this.txtInfoPileIdx = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 6:
|
||||
|
||||
#line 54 "..\..\..\Pages\ChargerPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.GetPileInfo_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 7:
|
||||
this.txtInfoResult = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 8:
|
||||
this.panelInfo = ((System.Windows.Controls.Border)(target));
|
||||
return;
|
||||
case 9:
|
||||
this.txtInfoSerial = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 10:
|
||||
this.txtInfoType = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 11:
|
||||
this.txtInfoGuns = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 12:
|
||||
this.txtInfoProto = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 13:
|
||||
this.txtInfoSw = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 14:
|
||||
this.txtInfoSim = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 15:
|
||||
|
||||
#line 88 "..\..\..\Pages\ChargerPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Reboot_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 16:
|
||||
this.txtRebootResult = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
}
|
||||
this._contentLoaded = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
BIN
上位机/YKC/obj/Debug/Pages/DashboardPage.baml
Normal file
BIN
上位机/YKC/obj/Debug/Pages/DashboardPage.baml
Normal file
Binary file not shown.
129
上位机/YKC/obj/Debug/Pages/DashboardPage.g.cs
Normal file
129
上位机/YKC/obj/Debug/Pages/DashboardPage.g.cs
Normal file
@@ -0,0 +1,129 @@
|
||||
#pragma checksum "..\..\..\Pages\DashboardPage.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "1508FCA098B53360DD176713F2E4977308A7F57161CCE5CD2E7FF08AF66F460C"
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// 此代码由工具生成。
|
||||
// 运行时版本:4.0.30319.42000
|
||||
//
|
||||
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
// 重新生成代码,这些更改将会丢失。
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Windows;
|
||||
using System.Windows.Automation;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Controls.Primitives;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Ink;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Markup;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Animation;
|
||||
using System.Windows.Media.Effects;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Media.Media3D;
|
||||
using System.Windows.Media.TextFormatting;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
using System.Windows.Shell;
|
||||
|
||||
|
||||
namespace YKC {
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// DashboardPage
|
||||
/// </summary>
|
||||
public partial class DashboardPage : System.Windows.Controls.Page, System.Windows.Markup.IComponentConnector {
|
||||
|
||||
|
||||
#line 14 "..\..\..\Pages\DashboardPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtConnStatus;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 22 "..\..\..\Pages\DashboardPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtOnlineCount;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 30 "..\..\..\Pages\DashboardPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtChargingCount;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 47 "..\..\..\Pages\DashboardPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.DataGrid dgPiles;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
private bool _contentLoaded;
|
||||
|
||||
/// <summary>
|
||||
/// InitializeComponent
|
||||
/// </summary>
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
public void InitializeComponent() {
|
||||
if (_contentLoaded) {
|
||||
return;
|
||||
}
|
||||
_contentLoaded = true;
|
||||
System.Uri resourceLocater = new System.Uri("/YKC;component/pages/dashboardpage.xaml", System.UriKind.Relative);
|
||||
|
||||
#line 1 "..\..\..\Pages\DashboardPage.xaml"
|
||||
System.Windows.Application.LoadComponent(this, resourceLocater);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
}
|
||||
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
|
||||
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
|
||||
switch (connectionId)
|
||||
{
|
||||
case 1:
|
||||
this.txtConnStatus = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 2:
|
||||
this.txtOnlineCount = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 3:
|
||||
this.txtChargingCount = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 4:
|
||||
|
||||
#line 42 "..\..\..\Pages\DashboardPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Refresh_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 5:
|
||||
this.dgPiles = ((System.Windows.Controls.DataGrid)(target));
|
||||
return;
|
||||
}
|
||||
this._contentLoaded = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
129
上位机/YKC/obj/Debug/Pages/DashboardPage.g.i.cs
Normal file
129
上位机/YKC/obj/Debug/Pages/DashboardPage.g.i.cs
Normal file
@@ -0,0 +1,129 @@
|
||||
#pragma checksum "..\..\..\Pages\DashboardPage.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "1508FCA098B53360DD176713F2E4977308A7F57161CCE5CD2E7FF08AF66F460C"
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// 此代码由工具生成。
|
||||
// 运行时版本:4.0.30319.42000
|
||||
//
|
||||
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
// 重新生成代码,这些更改将会丢失。
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Windows;
|
||||
using System.Windows.Automation;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Controls.Primitives;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Ink;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Markup;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Animation;
|
||||
using System.Windows.Media.Effects;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Media.Media3D;
|
||||
using System.Windows.Media.TextFormatting;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
using System.Windows.Shell;
|
||||
|
||||
|
||||
namespace YKC {
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// DashboardPage
|
||||
/// </summary>
|
||||
public partial class DashboardPage : System.Windows.Controls.Page, System.Windows.Markup.IComponentConnector {
|
||||
|
||||
|
||||
#line 14 "..\..\..\Pages\DashboardPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtConnStatus;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 22 "..\..\..\Pages\DashboardPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtOnlineCount;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 30 "..\..\..\Pages\DashboardPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtChargingCount;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 47 "..\..\..\Pages\DashboardPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.DataGrid dgPiles;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
private bool _contentLoaded;
|
||||
|
||||
/// <summary>
|
||||
/// InitializeComponent
|
||||
/// </summary>
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
public void InitializeComponent() {
|
||||
if (_contentLoaded) {
|
||||
return;
|
||||
}
|
||||
_contentLoaded = true;
|
||||
System.Uri resourceLocater = new System.Uri("/YKC;component/pages/dashboardpage.xaml", System.UriKind.Relative);
|
||||
|
||||
#line 1 "..\..\..\Pages\DashboardPage.xaml"
|
||||
System.Windows.Application.LoadComponent(this, resourceLocater);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
}
|
||||
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
|
||||
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
|
||||
switch (connectionId)
|
||||
{
|
||||
case 1:
|
||||
this.txtConnStatus = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 2:
|
||||
this.txtOnlineCount = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 3:
|
||||
this.txtChargingCount = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 4:
|
||||
|
||||
#line 42 "..\..\..\Pages\DashboardPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Refresh_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 5:
|
||||
this.dgPiles = ((System.Windows.Controls.DataGrid)(target));
|
||||
return;
|
||||
}
|
||||
this._contentLoaded = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
BIN
上位机/YKC/obj/Debug/Pages/GatewayPage.baml
Normal file
BIN
上位机/YKC/obj/Debug/Pages/GatewayPage.baml
Normal file
Binary file not shown.
323
上位机/YKC/obj/Debug/Pages/GatewayPage.g.cs
Normal file
323
上位机/YKC/obj/Debug/Pages/GatewayPage.g.cs
Normal file
@@ -0,0 +1,323 @@
|
||||
#pragma checksum "..\..\..\Pages\GatewayPage.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "AD46577C7B1F8341FA8948443614B6661F41BCF60263F7064FF2BFEBAFA9DC81"
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// 此代码由工具生成。
|
||||
// 运行时版本:4.0.30319.42000
|
||||
//
|
||||
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
// 重新生成代码,这些更改将会丢失。
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Windows;
|
||||
using System.Windows.Automation;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Controls.Primitives;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Ink;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Markup;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Animation;
|
||||
using System.Windows.Media.Effects;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Media.Media3D;
|
||||
using System.Windows.Media.TextFormatting;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
using System.Windows.Shell;
|
||||
|
||||
|
||||
namespace YKC {
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// GatewayPage
|
||||
/// </summary>
|
||||
public partial class GatewayPage : System.Windows.Controls.Page, System.Windows.Markup.IComponentConnector {
|
||||
|
||||
|
||||
#line 25 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtGwId;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 29 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtGwSw;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 32 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtGwHw;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 35 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtGwUptime;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 40 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtGwStatus;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 54 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtSim;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 58 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtNetStatus;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 62 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtSignal;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 65 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtIsp;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 70 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txt4GStatus;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 91 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtCloudHost;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 95 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtCloudPort;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 103 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtCloudResult;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 117 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtNetIp;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 121 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtNetMask;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 125 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtNetGw;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 129 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtNetDns;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 137 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtNetResult;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
private bool _contentLoaded;
|
||||
|
||||
/// <summary>
|
||||
/// InitializeComponent
|
||||
/// </summary>
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
public void InitializeComponent() {
|
||||
if (_contentLoaded) {
|
||||
return;
|
||||
}
|
||||
_contentLoaded = true;
|
||||
System.Uri resourceLocater = new System.Uri("/YKC;component/pages/gatewaypage.xaml", System.UriKind.Relative);
|
||||
|
||||
#line 1 "..\..\..\Pages\GatewayPage.xaml"
|
||||
System.Windows.Application.LoadComponent(this, resourceLocater);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
}
|
||||
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
|
||||
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
|
||||
switch (connectionId)
|
||||
{
|
||||
case 1:
|
||||
this.txtGwId = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 2:
|
||||
this.txtGwSw = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 3:
|
||||
this.txtGwHw = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 4:
|
||||
this.txtGwUptime = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 5:
|
||||
|
||||
#line 39 "..\..\..\Pages\GatewayPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.RefreshGwInfo_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 6:
|
||||
this.txtGwStatus = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 7:
|
||||
this.txtSim = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 8:
|
||||
this.txtNetStatus = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 9:
|
||||
this.txtSignal = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 10:
|
||||
this.txtIsp = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 11:
|
||||
|
||||
#line 69 "..\..\..\Pages\GatewayPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Refresh4G_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 12:
|
||||
this.txt4GStatus = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 13:
|
||||
this.txtCloudHost = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 14:
|
||||
this.txtCloudPort = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 15:
|
||||
|
||||
#line 100 "..\..\..\Pages\GatewayPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.LoadCloudConfig_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 16:
|
||||
|
||||
#line 102 "..\..\..\Pages\GatewayPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.SaveCloudConfig_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 17:
|
||||
this.txtCloudResult = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 18:
|
||||
this.txtNetIp = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 19:
|
||||
this.txtNetMask = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 20:
|
||||
this.txtNetGw = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 21:
|
||||
this.txtNetDns = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 22:
|
||||
|
||||
#line 134 "..\..\..\Pages\GatewayPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.LoadNetConfig_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 23:
|
||||
|
||||
#line 136 "..\..\..\Pages\GatewayPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.SaveNetConfig_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 24:
|
||||
this.txtNetResult = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
}
|
||||
this._contentLoaded = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
323
上位机/YKC/obj/Debug/Pages/GatewayPage.g.i.cs
Normal file
323
上位机/YKC/obj/Debug/Pages/GatewayPage.g.i.cs
Normal file
@@ -0,0 +1,323 @@
|
||||
#pragma checksum "..\..\..\Pages\GatewayPage.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "AD46577C7B1F8341FA8948443614B6661F41BCF60263F7064FF2BFEBAFA9DC81"
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// 此代码由工具生成。
|
||||
// 运行时版本:4.0.30319.42000
|
||||
//
|
||||
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
// 重新生成代码,这些更改将会丢失。
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Windows;
|
||||
using System.Windows.Automation;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Controls.Primitives;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Ink;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Markup;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Animation;
|
||||
using System.Windows.Media.Effects;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Media.Media3D;
|
||||
using System.Windows.Media.TextFormatting;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
using System.Windows.Shell;
|
||||
|
||||
|
||||
namespace YKC {
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// GatewayPage
|
||||
/// </summary>
|
||||
public partial class GatewayPage : System.Windows.Controls.Page, System.Windows.Markup.IComponentConnector {
|
||||
|
||||
|
||||
#line 25 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtGwId;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 29 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtGwSw;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 32 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtGwHw;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 35 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtGwUptime;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 40 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtGwStatus;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 54 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtSim;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 58 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtNetStatus;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 62 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtSignal;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 65 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtIsp;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 70 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txt4GStatus;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 91 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtCloudHost;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 95 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtCloudPort;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 103 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtCloudResult;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 117 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtNetIp;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 121 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtNetMask;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 125 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtNetGw;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 129 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBox txtNetDns;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 137 "..\..\..\Pages\GatewayPage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtNetResult;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
private bool _contentLoaded;
|
||||
|
||||
/// <summary>
|
||||
/// InitializeComponent
|
||||
/// </summary>
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
public void InitializeComponent() {
|
||||
if (_contentLoaded) {
|
||||
return;
|
||||
}
|
||||
_contentLoaded = true;
|
||||
System.Uri resourceLocater = new System.Uri("/YKC;component/pages/gatewaypage.xaml", System.UriKind.Relative);
|
||||
|
||||
#line 1 "..\..\..\Pages\GatewayPage.xaml"
|
||||
System.Windows.Application.LoadComponent(this, resourceLocater);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
}
|
||||
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
|
||||
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
|
||||
switch (connectionId)
|
||||
{
|
||||
case 1:
|
||||
this.txtGwId = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 2:
|
||||
this.txtGwSw = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 3:
|
||||
this.txtGwHw = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 4:
|
||||
this.txtGwUptime = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 5:
|
||||
|
||||
#line 39 "..\..\..\Pages\GatewayPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.RefreshGwInfo_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 6:
|
||||
this.txtGwStatus = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 7:
|
||||
this.txtSim = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 8:
|
||||
this.txtNetStatus = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 9:
|
||||
this.txtSignal = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 10:
|
||||
this.txtIsp = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 11:
|
||||
|
||||
#line 69 "..\..\..\Pages\GatewayPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Refresh4G_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 12:
|
||||
this.txt4GStatus = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 13:
|
||||
this.txtCloudHost = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 14:
|
||||
this.txtCloudPort = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 15:
|
||||
|
||||
#line 100 "..\..\..\Pages\GatewayPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.LoadCloudConfig_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 16:
|
||||
|
||||
#line 102 "..\..\..\Pages\GatewayPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.SaveCloudConfig_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 17:
|
||||
this.txtCloudResult = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 18:
|
||||
this.txtNetIp = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 19:
|
||||
this.txtNetMask = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 20:
|
||||
this.txtNetGw = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 21:
|
||||
this.txtNetDns = ((System.Windows.Controls.TextBox)(target));
|
||||
return;
|
||||
case 22:
|
||||
|
||||
#line 134 "..\..\..\Pages\GatewayPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.LoadNetConfig_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 23:
|
||||
|
||||
#line 136 "..\..\..\Pages\GatewayPage.xaml"
|
||||
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.SaveNetConfig_Click);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 24:
|
||||
this.txtNetResult = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
}
|
||||
this._contentLoaded = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
BIN
上位机/YKC/obj/Debug/Pages/RealtimePage.baml
Normal file
BIN
上位机/YKC/obj/Debug/Pages/RealtimePage.baml
Normal file
Binary file not shown.
266
上位机/YKC/obj/Debug/Pages/RealtimePage.g.cs
Normal file
266
上位机/YKC/obj/Debug/Pages/RealtimePage.g.cs
Normal file
@@ -0,0 +1,266 @@
|
||||
#pragma checksum "..\..\..\Pages\RealtimePage.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "5EED3EEEA729DC8EA1B9280A5B02D0300579DE890C7796C5C8C4CF0D736781DD"
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// 此代码由工具生成。
|
||||
// 运行时版本:4.0.30319.42000
|
||||
//
|
||||
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
// 重新生成代码,这些更改将会丢失。
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
using OxyPlot.Wpf;
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Windows;
|
||||
using System.Windows.Automation;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Controls.Primitives;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Ink;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Markup;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Animation;
|
||||
using System.Windows.Media.Effects;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Media.Media3D;
|
||||
using System.Windows.Media.TextFormatting;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
using System.Windows.Shell;
|
||||
|
||||
|
||||
namespace YKC {
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// RealtimePage
|
||||
/// </summary>
|
||||
public partial class RealtimePage : System.Windows.Controls.Page, System.Windows.Markup.IComponentConnector {
|
||||
|
||||
|
||||
#line 18 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.ComboBox cmbPile;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 26 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.ComboBox cmbGun;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 39 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtCurrent;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 47 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtVoltage;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 55 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtPower;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 63 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtEnergy;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 71 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtTotalAmount;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 79 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtStatus;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 91 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtOrderNo;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 100 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtSoc;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 108 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtCumTime;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 117 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtRemTime;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 140 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal OxyPlot.Wpf.PlotView plotCurrent;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 148 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal OxyPlot.Wpf.PlotView plotVoltage;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 156 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal OxyPlot.Wpf.PlotView plotPower;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 164 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal OxyPlot.Wpf.PlotView plotAmount;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
private bool _contentLoaded;
|
||||
|
||||
/// <summary>
|
||||
/// InitializeComponent
|
||||
/// </summary>
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
public void InitializeComponent() {
|
||||
if (_contentLoaded) {
|
||||
return;
|
||||
}
|
||||
_contentLoaded = true;
|
||||
System.Uri resourceLocater = new System.Uri("/YKC;component/pages/realtimepage.xaml", System.UriKind.Relative);
|
||||
|
||||
#line 1 "..\..\..\Pages\RealtimePage.xaml"
|
||||
System.Windows.Application.LoadComponent(this, resourceLocater);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
}
|
||||
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
|
||||
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
|
||||
switch (connectionId)
|
||||
{
|
||||
case 1:
|
||||
this.cmbPile = ((System.Windows.Controls.ComboBox)(target));
|
||||
|
||||
#line 19 "..\..\..\Pages\RealtimePage.xaml"
|
||||
this.cmbPile.SelectionChanged += new System.Windows.Controls.SelectionChangedEventHandler(this.PileGun_Changed);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 2:
|
||||
this.cmbGun = ((System.Windows.Controls.ComboBox)(target));
|
||||
|
||||
#line 27 "..\..\..\Pages\RealtimePage.xaml"
|
||||
this.cmbGun.SelectionChanged += new System.Windows.Controls.SelectionChangedEventHandler(this.PileGun_Changed);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 3:
|
||||
this.txtCurrent = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 4:
|
||||
this.txtVoltage = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 5:
|
||||
this.txtPower = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 6:
|
||||
this.txtEnergy = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 7:
|
||||
this.txtTotalAmount = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 8:
|
||||
this.txtStatus = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 9:
|
||||
this.txtOrderNo = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 10:
|
||||
this.txtSoc = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 11:
|
||||
this.txtCumTime = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 12:
|
||||
this.txtRemTime = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 13:
|
||||
this.plotCurrent = ((OxyPlot.Wpf.PlotView)(target));
|
||||
return;
|
||||
case 14:
|
||||
this.plotVoltage = ((OxyPlot.Wpf.PlotView)(target));
|
||||
return;
|
||||
case 15:
|
||||
this.plotPower = ((OxyPlot.Wpf.PlotView)(target));
|
||||
return;
|
||||
case 16:
|
||||
this.plotAmount = ((OxyPlot.Wpf.PlotView)(target));
|
||||
return;
|
||||
}
|
||||
this._contentLoaded = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
266
上位机/YKC/obj/Debug/Pages/RealtimePage.g.i.cs
Normal file
266
上位机/YKC/obj/Debug/Pages/RealtimePage.g.i.cs
Normal file
@@ -0,0 +1,266 @@
|
||||
#pragma checksum "..\..\..\Pages\RealtimePage.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "5EED3EEEA729DC8EA1B9280A5B02D0300579DE890C7796C5C8C4CF0D736781DD"
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// 此代码由工具生成。
|
||||
// 运行时版本:4.0.30319.42000
|
||||
//
|
||||
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
// 重新生成代码,这些更改将会丢失。
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
using OxyPlot.Wpf;
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Windows;
|
||||
using System.Windows.Automation;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Controls.Primitives;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Ink;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Markup;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Animation;
|
||||
using System.Windows.Media.Effects;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Media.Media3D;
|
||||
using System.Windows.Media.TextFormatting;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
using System.Windows.Shell;
|
||||
|
||||
|
||||
namespace YKC {
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// RealtimePage
|
||||
/// </summary>
|
||||
public partial class RealtimePage : System.Windows.Controls.Page, System.Windows.Markup.IComponentConnector {
|
||||
|
||||
|
||||
#line 18 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.ComboBox cmbPile;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 26 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.ComboBox cmbGun;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 39 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtCurrent;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 47 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtVoltage;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 55 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtPower;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 63 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtEnergy;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 71 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtTotalAmount;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 79 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtStatus;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 91 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtOrderNo;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 100 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtSoc;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 108 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtCumTime;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 117 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal System.Windows.Controls.TextBlock txtRemTime;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 140 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal OxyPlot.Wpf.PlotView plotCurrent;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 148 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal OxyPlot.Wpf.PlotView plotVoltage;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 156 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal OxyPlot.Wpf.PlotView plotPower;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
|
||||
#line 164 "..\..\..\Pages\RealtimePage.xaml"
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
|
||||
internal OxyPlot.Wpf.PlotView plotAmount;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
private bool _contentLoaded;
|
||||
|
||||
/// <summary>
|
||||
/// InitializeComponent
|
||||
/// </summary>
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
public void InitializeComponent() {
|
||||
if (_contentLoaded) {
|
||||
return;
|
||||
}
|
||||
_contentLoaded = true;
|
||||
System.Uri resourceLocater = new System.Uri("/YKC;component/pages/realtimepage.xaml", System.UriKind.Relative);
|
||||
|
||||
#line 1 "..\..\..\Pages\RealtimePage.xaml"
|
||||
System.Windows.Application.LoadComponent(this, resourceLocater);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
}
|
||||
|
||||
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
|
||||
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
|
||||
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
|
||||
switch (connectionId)
|
||||
{
|
||||
case 1:
|
||||
this.cmbPile = ((System.Windows.Controls.ComboBox)(target));
|
||||
|
||||
#line 19 "..\..\..\Pages\RealtimePage.xaml"
|
||||
this.cmbPile.SelectionChanged += new System.Windows.Controls.SelectionChangedEventHandler(this.PileGun_Changed);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 2:
|
||||
this.cmbGun = ((System.Windows.Controls.ComboBox)(target));
|
||||
|
||||
#line 27 "..\..\..\Pages\RealtimePage.xaml"
|
||||
this.cmbGun.SelectionChanged += new System.Windows.Controls.SelectionChangedEventHandler(this.PileGun_Changed);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return;
|
||||
case 3:
|
||||
this.txtCurrent = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 4:
|
||||
this.txtVoltage = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 5:
|
||||
this.txtPower = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 6:
|
||||
this.txtEnergy = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 7:
|
||||
this.txtTotalAmount = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 8:
|
||||
this.txtStatus = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 9:
|
||||
this.txtOrderNo = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 10:
|
||||
this.txtSoc = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 11:
|
||||
this.txtCumTime = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 12:
|
||||
this.txtRemTime = ((System.Windows.Controls.TextBlock)(target));
|
||||
return;
|
||||
case 13:
|
||||
this.plotCurrent = ((OxyPlot.Wpf.PlotView)(target));
|
||||
return;
|
||||
case 14:
|
||||
this.plotVoltage = ((OxyPlot.Wpf.PlotView)(target));
|
||||
return;
|
||||
case 15:
|
||||
this.plotPower = ((OxyPlot.Wpf.PlotView)(target));
|
||||
return;
|
||||
case 16:
|
||||
this.plotAmount = ((OxyPlot.Wpf.PlotView)(target));
|
||||
return;
|
||||
}
|
||||
this._contentLoaded = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
BIN
上位机/YKC/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll
Normal file
BIN
上位机/YKC/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll
Normal file
Binary file not shown.
BIN
上位机/YKC/obj/Debug/YKC.Properties.Resources.resources
Normal file
BIN
上位机/YKC/obj/Debug/YKC.Properties.Resources.resources
Normal file
Binary file not shown.
BIN
上位机/YKC/obj/Debug/YKC.csproj.AssemblyReference.cache
Normal file
BIN
上位机/YKC/obj/Debug/YKC.csproj.AssemblyReference.cache
Normal file
Binary file not shown.
1
上位机/YKC/obj/Debug/YKC.csproj.CoreCompileInputs.cache
Normal file
1
上位机/YKC/obj/Debug/YKC.csproj.CoreCompileInputs.cache
Normal file
@@ -0,0 +1 @@
|
||||
b70b92aee237e65b6ea21cb2cfff89384ebd80dce4b9ea16adc79dd9cef2fdf5
|
||||
30
上位机/YKC/obj/Debug/YKC.csproj.FileListAbsolute.txt
Normal file
30
上位机/YKC/obj/Debug/YKC.csproj.FileListAbsolute.txt
Normal file
@@ -0,0 +1,30 @@
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\bin\Debug\YKC.exe.config
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\bin\Debug\YKC.exe
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\bin\Debug\YKC.pdb
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\YKC.csproj.AssemblyReference.cache
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\MainWindow.baml
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\App.baml
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\MainWindow.g.cs
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\App.g.cs
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\YKC_MarkupCompile.cache
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\YKC.g.resources
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\YKC.Properties.Resources.resources
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\YKC.csproj.GenerateResource.cache
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\YKC.csproj.CoreCompileInputs.cache
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\YKC.exe
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\YKC.pdb
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\Pages\DashboardPage.baml
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\Pages\RealtimePage.baml
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\Pages\ChargerPage.baml
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\Pages\GatewayPage.baml
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\Pages\DashboardPage.g.cs
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\Pages\RealtimePage.g.cs
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\Pages\ChargerPage.g.cs
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\Pages\GatewayPage.g.cs
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\bin\Debug\OxyPlot.dll
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\bin\Debug\OxyPlot.Wpf.dll
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\bin\Debug\OxyPlot.Wpf.Shared.dll
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\YKC.csproj.Up2Date
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\bin\Debug\Newtonsoft.Json.dll
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\LoginWindow.baml
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\LoginWindow.g.cs
|
||||
BIN
上位机/YKC/obj/Debug/YKC.csproj.GenerateResource.cache
Normal file
BIN
上位机/YKC/obj/Debug/YKC.csproj.GenerateResource.cache
Normal file
Binary file not shown.
0
上位机/YKC/obj/Debug/YKC.csproj.Up2Date
Normal file
0
上位机/YKC/obj/Debug/YKC.csproj.Up2Date
Normal file
BIN
上位机/YKC/obj/Debug/YKC.exe
Normal file
BIN
上位机/YKC/obj/Debug/YKC.exe
Normal file
Binary file not shown.
BIN
上位机/YKC/obj/Debug/YKC.g.resources
Normal file
BIN
上位机/YKC/obj/Debug/YKC.g.resources
Normal file
Binary file not shown.
BIN
上位机/YKC/obj/Debug/YKC.pdb
Normal file
BIN
上位机/YKC/obj/Debug/YKC.pdb
Normal file
Binary file not shown.
20
上位机/YKC/obj/Debug/YKC_MarkupCompile.cache
Normal file
20
上位机/YKC/obj/Debug/YKC_MarkupCompile.cache
Normal file
@@ -0,0 +1,20 @@
|
||||
YKC
|
||||
|
||||
|
||||
winexe
|
||||
C#
|
||||
.cs
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\
|
||||
YKC
|
||||
none
|
||||
false
|
||||
DEBUG;TRACE
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\App.xaml
|
||||
6469827525
|
||||
|
||||
13-721072773
|
||||
19-2120478581
|
||||
MainWindow.xaml;LoginWindow.xaml;Pages\DashboardPage.xaml;Pages\RealtimePage.xaml;Pages\ChargerPage.xaml;Pages\GatewayPage.xaml;
|
||||
|
||||
False
|
||||
|
||||
20
上位机/YKC/obj/Debug/YKC_MarkupCompile.i.cache
Normal file
20
上位机/YKC/obj/Debug/YKC_MarkupCompile.i.cache
Normal file
@@ -0,0 +1,20 @@
|
||||
YKC
|
||||
|
||||
|
||||
winexe
|
||||
C#
|
||||
.cs
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\obj\Debug\
|
||||
YKC
|
||||
none
|
||||
false
|
||||
DEBUG;TRACE
|
||||
C:\Users\Administrator\PycharmProjects\PythonProject\C#\YKC\App.xaml
|
||||
6469827525
|
||||
|
||||
141491805905
|
||||
19-2120478581
|
||||
MainWindow.xaml;LoginWindow.xaml;Pages\DashboardPage.xaml;Pages\RealtimePage.xaml;Pages\ChargerPage.xaml;Pages\GatewayPage.xaml;
|
||||
|
||||
False
|
||||
|
||||
72
上位机/YKC/obj/YKC.csproj.nuget.dgspec.json
Normal file
72
上位机/YKC/obj/YKC.csproj.nuget.dgspec.json
Normal file
@@ -0,0 +1,72 @@
|
||||
{
|
||||
"format": 1,
|
||||
"restore": {
|
||||
"C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\YKC.csproj": {}
|
||||
},
|
||||
"projects": {
|
||||
"C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\YKC.csproj": {
|
||||
"version": "1.0.0",
|
||||
"restore": {
|
||||
"projectUniqueName": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\YKC.csproj",
|
||||
"projectName": "YKC",
|
||||
"projectPath": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\YKC.csproj",
|
||||
"packagesPath": "C:\\Users\\Administrator\\.nuget\\packages\\",
|
||||
"outputPath": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\obj\\",
|
||||
"projectStyle": "PackageReference",
|
||||
"skipContentFileWrite": true,
|
||||
"UsingMicrosoftNETSdk": false,
|
||||
"configFilePaths": [
|
||||
"C:\\Users\\Administrator\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
||||
],
|
||||
"originalTargetFrameworks": [
|
||||
"net472"
|
||||
],
|
||||
"sources": {
|
||||
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
|
||||
"https://api.nuget.org/v3/index.json": {}
|
||||
},
|
||||
"frameworks": {
|
||||
"net472": {
|
||||
"framework": "net472",
|
||||
"projectReferences": {}
|
||||
}
|
||||
},
|
||||
"restoreAuditProperties": {
|
||||
"enableAudit": "true",
|
||||
"auditLevel": "low",
|
||||
"auditMode": "direct"
|
||||
}
|
||||
},
|
||||
"frameworks": {
|
||||
"net472": {
|
||||
"framework": "net472",
|
||||
"dependencies": {
|
||||
"Newtonsoft.Json": {
|
||||
"target": "Package",
|
||||
"version": "[13.0.3, )"
|
||||
},
|
||||
"OxyPlot.Wpf": {
|
||||
"target": "Package",
|
||||
"version": "[2.2.0, )"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"runtimes": {
|
||||
"win": {
|
||||
"#import": []
|
||||
},
|
||||
"win-arm64": {
|
||||
"#import": []
|
||||
},
|
||||
"win-x64": {
|
||||
"#import": []
|
||||
},
|
||||
"win-x86": {
|
||||
"#import": []
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
18
上位机/YKC/obj/YKC.csproj.nuget.g.props
Normal file
18
上位机/YKC/obj/YKC.csproj.nuget.g.props
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
|
||||
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
|
||||
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
|
||||
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
|
||||
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\Administrator\.nuget\packages\</NuGetPackageFolders>
|
||||
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
|
||||
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">7.0.0</NuGetToolVersion>
|
||||
</PropertyGroup>
|
||||
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||
<SourceRoot Include="C:\Users\Administrator\.nuget\packages\" />
|
||||
</ItemGroup>
|
||||
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||
<PkgOxyPlot_Wpf Condition=" '$(PkgOxyPlot_Wpf)' == '' ">C:\Users\Administrator\.nuget\packages\oxyplot.wpf\2.2.0</PkgOxyPlot_Wpf>
|
||||
</PropertyGroup>
|
||||
</Project>
|
||||
2
上位机/YKC/obj/YKC.csproj.nuget.g.targets
Normal file
2
上位机/YKC/obj/YKC.csproj.nuget.g.targets
Normal file
@@ -0,0 +1,2 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
|
||||
972
上位机/YKC/obj/project.assets.json
Normal file
972
上位机/YKC/obj/project.assets.json
Normal file
@@ -0,0 +1,972 @@
|
||||
{
|
||||
"version": 3,
|
||||
"targets": {
|
||||
".NETFramework,Version=v4.7.2": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies/1.0.2": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies.net472": "1.0.2"
|
||||
}
|
||||
},
|
||||
"Microsoft.NETFramework.ReferenceAssemblies.net472/1.0.2": {
|
||||
"type": "package",
|
||||
"build": {
|
||||
"build/_._": {}
|
||||
}
|
||||
},
|
||||
"Newtonsoft.Json/13.0.3": {
|
||||
"type": "package",
|
||||
"compile": {
|
||||
"lib/net45/Newtonsoft.Json.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net45/Newtonsoft.Json.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"OxyPlot.Core/2.2.0": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies": "1.0.2"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net462/OxyPlot.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net462/OxyPlot.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"OxyPlot.Wpf/2.2.0": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies": "1.0.2",
|
||||
"OxyPlot.Core": "2.2.0",
|
||||
"OxyPlot.Wpf.Shared": "2.2.0"
|
||||
},
|
||||
"frameworkAssemblies": [
|
||||
"ReachFramework",
|
||||
"System.Printing"
|
||||
],
|
||||
"compile": {
|
||||
"lib/net462/OxyPlot.Wpf.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net462/OxyPlot.Wpf.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"OxyPlot.Wpf.Shared/2.2.0": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies": "1.0.2",
|
||||
"OxyPlot.Core": "2.2.0"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net462/OxyPlot.Wpf.Shared.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net462/OxyPlot.Wpf.Shared.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
".NETFramework,Version=v4.7.2/win": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies/1.0.2": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies.net472": "1.0.2"
|
||||
}
|
||||
},
|
||||
"Microsoft.NETFramework.ReferenceAssemblies.net472/1.0.2": {
|
||||
"type": "package",
|
||||
"build": {
|
||||
"build/_._": {}
|
||||
}
|
||||
},
|
||||
"Newtonsoft.Json/13.0.3": {
|
||||
"type": "package",
|
||||
"compile": {
|
||||
"lib/net45/Newtonsoft.Json.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net45/Newtonsoft.Json.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"OxyPlot.Core/2.2.0": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies": "1.0.2"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net462/OxyPlot.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net462/OxyPlot.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"OxyPlot.Wpf/2.2.0": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies": "1.0.2",
|
||||
"OxyPlot.Core": "2.2.0",
|
||||
"OxyPlot.Wpf.Shared": "2.2.0"
|
||||
},
|
||||
"frameworkAssemblies": [
|
||||
"ReachFramework",
|
||||
"System.Printing"
|
||||
],
|
||||
"compile": {
|
||||
"lib/net462/OxyPlot.Wpf.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net462/OxyPlot.Wpf.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"OxyPlot.Wpf.Shared/2.2.0": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies": "1.0.2",
|
||||
"OxyPlot.Core": "2.2.0"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net462/OxyPlot.Wpf.Shared.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net462/OxyPlot.Wpf.Shared.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
".NETFramework,Version=v4.7.2/win-arm64": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies/1.0.2": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies.net472": "1.0.2"
|
||||
}
|
||||
},
|
||||
"Microsoft.NETFramework.ReferenceAssemblies.net472/1.0.2": {
|
||||
"type": "package",
|
||||
"build": {
|
||||
"build/_._": {}
|
||||
}
|
||||
},
|
||||
"Newtonsoft.Json/13.0.3": {
|
||||
"type": "package",
|
||||
"compile": {
|
||||
"lib/net45/Newtonsoft.Json.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net45/Newtonsoft.Json.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"OxyPlot.Core/2.2.0": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies": "1.0.2"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net462/OxyPlot.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net462/OxyPlot.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"OxyPlot.Wpf/2.2.0": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies": "1.0.2",
|
||||
"OxyPlot.Core": "2.2.0",
|
||||
"OxyPlot.Wpf.Shared": "2.2.0"
|
||||
},
|
||||
"frameworkAssemblies": [
|
||||
"ReachFramework",
|
||||
"System.Printing"
|
||||
],
|
||||
"compile": {
|
||||
"lib/net462/OxyPlot.Wpf.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net462/OxyPlot.Wpf.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"OxyPlot.Wpf.Shared/2.2.0": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies": "1.0.2",
|
||||
"OxyPlot.Core": "2.2.0"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net462/OxyPlot.Wpf.Shared.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net462/OxyPlot.Wpf.Shared.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
".NETFramework,Version=v4.7.2/win-x64": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies/1.0.2": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies.net472": "1.0.2"
|
||||
}
|
||||
},
|
||||
"Microsoft.NETFramework.ReferenceAssemblies.net472/1.0.2": {
|
||||
"type": "package",
|
||||
"build": {
|
||||
"build/_._": {}
|
||||
}
|
||||
},
|
||||
"Newtonsoft.Json/13.0.3": {
|
||||
"type": "package",
|
||||
"compile": {
|
||||
"lib/net45/Newtonsoft.Json.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net45/Newtonsoft.Json.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"OxyPlot.Core/2.2.0": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies": "1.0.2"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net462/OxyPlot.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net462/OxyPlot.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"OxyPlot.Wpf/2.2.0": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies": "1.0.2",
|
||||
"OxyPlot.Core": "2.2.0",
|
||||
"OxyPlot.Wpf.Shared": "2.2.0"
|
||||
},
|
||||
"frameworkAssemblies": [
|
||||
"ReachFramework",
|
||||
"System.Printing"
|
||||
],
|
||||
"compile": {
|
||||
"lib/net462/OxyPlot.Wpf.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net462/OxyPlot.Wpf.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"OxyPlot.Wpf.Shared/2.2.0": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies": "1.0.2",
|
||||
"OxyPlot.Core": "2.2.0"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net462/OxyPlot.Wpf.Shared.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net462/OxyPlot.Wpf.Shared.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
".NETFramework,Version=v4.7.2/win-x86": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies/1.0.2": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies.net472": "1.0.2"
|
||||
}
|
||||
},
|
||||
"Microsoft.NETFramework.ReferenceAssemblies.net472/1.0.2": {
|
||||
"type": "package",
|
||||
"build": {
|
||||
"build/_._": {}
|
||||
}
|
||||
},
|
||||
"Newtonsoft.Json/13.0.3": {
|
||||
"type": "package",
|
||||
"compile": {
|
||||
"lib/net45/Newtonsoft.Json.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net45/Newtonsoft.Json.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"OxyPlot.Core/2.2.0": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies": "1.0.2"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net462/OxyPlot.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net462/OxyPlot.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"OxyPlot.Wpf/2.2.0": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies": "1.0.2",
|
||||
"OxyPlot.Core": "2.2.0",
|
||||
"OxyPlot.Wpf.Shared": "2.2.0"
|
||||
},
|
||||
"frameworkAssemblies": [
|
||||
"ReachFramework",
|
||||
"System.Printing"
|
||||
],
|
||||
"compile": {
|
||||
"lib/net462/OxyPlot.Wpf.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net462/OxyPlot.Wpf.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"OxyPlot.Wpf.Shared/2.2.0": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies": "1.0.2",
|
||||
"OxyPlot.Core": "2.2.0"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net462/OxyPlot.Wpf.Shared.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net462/OxyPlot.Wpf.Shared.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"libraries": {
|
||||
"Microsoft.NETFramework.ReferenceAssemblies/1.0.2": {
|
||||
"sha512": "5/cSEVld+px/CuRrbohO/djfg6++eR6zGpy88MgqloXvkj//WXWpFZyu/OpkXPN0u5m+dN/EVwLNYFUxD4h2+A==",
|
||||
"type": "package",
|
||||
"path": "microsoft.netframework.referenceassemblies/1.0.2",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
"microsoft.netframework.referenceassemblies.1.0.2.nupkg.sha512",
|
||||
"microsoft.netframework.referenceassemblies.nuspec"
|
||||
]
|
||||
},
|
||||
"Microsoft.NETFramework.ReferenceAssemblies.net472/1.0.2": {
|
||||
"sha512": "ryAuwkvjMC9xYQ0VXsG7ZBo62y5tBmYaCnovOL5IXfnQPQqjvJGRkLMDyUx+dnCb96UVLJv83R6XK+sRnDnaZg==",
|
||||
"type": "package",
|
||||
"path": "microsoft.netframework.referenceassemblies.net472/1.0.2",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
"build/.NETFramework/v4.7.2/Accessibility.dll",
|
||||
"build/.NETFramework/v4.7.2/Accessibility.xml",
|
||||
"build/.NETFramework/v4.7.2/CustomMarshalers.dll",
|
||||
"build/.NETFramework/v4.7.2/CustomMarshalers.xml",
|
||||
"build/.NETFramework/v4.7.2/Facades/Microsoft.Win32.Primitives.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.AppContext.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Collections.Concurrent.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Collections.NonGeneric.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Collections.Specialized.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Collections.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.ComponentModel.Annotations.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.ComponentModel.EventBasedAsync.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.ComponentModel.Primitives.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.ComponentModel.TypeConverter.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.ComponentModel.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Console.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Data.Common.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Diagnostics.Contracts.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Diagnostics.Debug.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Diagnostics.FileVersionInfo.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Diagnostics.Process.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Diagnostics.StackTrace.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Diagnostics.TextWriterTraceListener.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Diagnostics.Tools.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Diagnostics.TraceSource.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Drawing.Primitives.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Dynamic.Runtime.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Globalization.Calendars.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Globalization.Extensions.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Globalization.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.IO.Compression.ZipFile.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.IO.FileSystem.DriveInfo.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.IO.FileSystem.Primitives.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.IO.FileSystem.Watcher.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.IO.FileSystem.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.IO.IsolatedStorage.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.IO.MemoryMappedFiles.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.IO.Pipes.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.IO.UnmanagedMemoryStream.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.IO.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Linq.Expressions.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Linq.Parallel.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Linq.Queryable.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Linq.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Net.Http.Rtc.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Net.NameResolution.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Net.NetworkInformation.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Net.Ping.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Net.Primitives.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Net.Requests.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Net.Security.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Net.Sockets.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Net.WebHeaderCollection.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Net.WebSockets.Client.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Net.WebSockets.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.ObjectModel.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Reflection.Emit.ILGeneration.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Reflection.Emit.Lightweight.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Reflection.Emit.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Reflection.Extensions.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Reflection.Primitives.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Reflection.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Resources.Reader.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Resources.ResourceManager.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Resources.Writer.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Runtime.CompilerServices.VisualC.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Runtime.Extensions.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Runtime.Handles.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Runtime.InteropServices.RuntimeInformation.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Runtime.InteropServices.WindowsRuntime.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Runtime.InteropServices.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Runtime.Numerics.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Runtime.Serialization.Formatters.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Runtime.Serialization.Json.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Runtime.Serialization.Primitives.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Runtime.Serialization.Xml.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Runtime.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Security.Claims.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Security.Cryptography.Algorithms.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Security.Cryptography.Csp.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Security.Cryptography.Encoding.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Security.Cryptography.Primitives.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Security.Cryptography.X509Certificates.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Security.Principal.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Security.SecureString.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.ServiceModel.Duplex.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.ServiceModel.Http.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.ServiceModel.NetTcp.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.ServiceModel.Primitives.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.ServiceModel.Security.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Text.Encoding.Extensions.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Text.Encoding.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Text.RegularExpressions.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Threading.Overlapped.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Threading.Tasks.Parallel.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Threading.Tasks.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Threading.Thread.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Threading.ThreadPool.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Threading.Timer.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Threading.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.ValueTuple.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Xml.ReaderWriter.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Xml.XDocument.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Xml.XPath.XDocument.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Xml.XPath.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Xml.XmlDocument.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/System.Xml.XmlSerializer.dll",
|
||||
"build/.NETFramework/v4.7.2/Facades/netstandard.dll",
|
||||
"build/.NETFramework/v4.7.2/ISymWrapper.dll",
|
||||
"build/.NETFramework/v4.7.2/ISymWrapper.xml",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.Activities.Build.dll",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.Activities.Build.xml",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.Build.Conversion.v4.0.dll",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.Build.Conversion.v4.0.xml",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.Build.Engine.dll",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.Build.Engine.xml",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.Build.Framework.dll",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.Build.Framework.xml",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.Build.Tasks.v4.0.dll",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.Build.Tasks.v4.0.xml",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.Build.Utilities.v4.0.dll",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.Build.Utilities.v4.0.xml",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.Build.dll",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.Build.xml",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.CSharp.dll",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.CSharp.xml",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.JScript.dll",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.JScript.xml",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.VisualBasic.Compatibility.Data.dll",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.VisualBasic.Compatibility.Data.xml",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.VisualBasic.Compatibility.dll",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.VisualBasic.Compatibility.xml",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.VisualBasic.dll",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.VisualBasic.xml",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.VisualC.STLCLR.dll",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.VisualC.STLCLR.xml",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.VisualC.dll",
|
||||
"build/.NETFramework/v4.7.2/Microsoft.VisualC.xml",
|
||||
"build/.NETFramework/v4.7.2/PermissionSets/FullTrust.xml",
|
||||
"build/.NETFramework/v4.7.2/PermissionSets/Internet.xml",
|
||||
"build/.NETFramework/v4.7.2/PermissionSets/LocalIntranet.xml",
|
||||
"build/.NETFramework/v4.7.2/PresentationBuildTasks.dll",
|
||||
"build/.NETFramework/v4.7.2/PresentationBuildTasks.xml",
|
||||
"build/.NETFramework/v4.7.2/PresentationCore.dll",
|
||||
"build/.NETFramework/v4.7.2/PresentationCore.xml",
|
||||
"build/.NETFramework/v4.7.2/PresentationFramework.Aero.dll",
|
||||
"build/.NETFramework/v4.7.2/PresentationFramework.Aero.xml",
|
||||
"build/.NETFramework/v4.7.2/PresentationFramework.Aero2.dll",
|
||||
"build/.NETFramework/v4.7.2/PresentationFramework.Aero2.xml",
|
||||
"build/.NETFramework/v4.7.2/PresentationFramework.AeroLite.dll",
|
||||
"build/.NETFramework/v4.7.2/PresentationFramework.AeroLite.xml",
|
||||
"build/.NETFramework/v4.7.2/PresentationFramework.Classic.dll",
|
||||
"build/.NETFramework/v4.7.2/PresentationFramework.Classic.xml",
|
||||
"build/.NETFramework/v4.7.2/PresentationFramework.Luna.dll",
|
||||
"build/.NETFramework/v4.7.2/PresentationFramework.Luna.xml",
|
||||
"build/.NETFramework/v4.7.2/PresentationFramework.Royale.dll",
|
||||
"build/.NETFramework/v4.7.2/PresentationFramework.Royale.xml",
|
||||
"build/.NETFramework/v4.7.2/PresentationFramework.dll",
|
||||
"build/.NETFramework/v4.7.2/PresentationFramework.xml",
|
||||
"build/.NETFramework/v4.7.2/ReachFramework.dll",
|
||||
"build/.NETFramework/v4.7.2/ReachFramework.xml",
|
||||
"build/.NETFramework/v4.7.2/RedistList/FrameworkList.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Activities.Core.Presentation.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Activities.Core.Presentation.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Activities.DurableInstancing.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Activities.DurableInstancing.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Activities.Presentation.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Activities.Presentation.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Activities.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Activities.xml",
|
||||
"build/.NETFramework/v4.7.2/System.AddIn.Contract.dll",
|
||||
"build/.NETFramework/v4.7.2/System.AddIn.Contract.xml",
|
||||
"build/.NETFramework/v4.7.2/System.AddIn.dll",
|
||||
"build/.NETFramework/v4.7.2/System.AddIn.xml",
|
||||
"build/.NETFramework/v4.7.2/System.ComponentModel.Composition.Registration.dll",
|
||||
"build/.NETFramework/v4.7.2/System.ComponentModel.Composition.Registration.xml",
|
||||
"build/.NETFramework/v4.7.2/System.ComponentModel.Composition.dll",
|
||||
"build/.NETFramework/v4.7.2/System.ComponentModel.Composition.xml",
|
||||
"build/.NETFramework/v4.7.2/System.ComponentModel.DataAnnotations.dll",
|
||||
"build/.NETFramework/v4.7.2/System.ComponentModel.DataAnnotations.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Configuration.Install.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Configuration.Install.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Configuration.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Configuration.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Core.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Core.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Data.DataSetExtensions.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Data.DataSetExtensions.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Data.Entity.Design.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Data.Entity.Design.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Data.Entity.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Data.Entity.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Data.Linq.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Data.Linq.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Data.OracleClient.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Data.OracleClient.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Data.Services.Client.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Data.Services.Client.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Data.Services.Design.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Data.Services.Design.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Data.Services.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Data.Services.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Data.SqlXml.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Data.SqlXml.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Data.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Data.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Deployment.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Deployment.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Design.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Design.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Device.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Device.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Diagnostics.Tracing.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Diagnostics.Tracing.xml",
|
||||
"build/.NETFramework/v4.7.2/System.DirectoryServices.AccountManagement.dll",
|
||||
"build/.NETFramework/v4.7.2/System.DirectoryServices.AccountManagement.xml",
|
||||
"build/.NETFramework/v4.7.2/System.DirectoryServices.Protocols.dll",
|
||||
"build/.NETFramework/v4.7.2/System.DirectoryServices.Protocols.xml",
|
||||
"build/.NETFramework/v4.7.2/System.DirectoryServices.dll",
|
||||
"build/.NETFramework/v4.7.2/System.DirectoryServices.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Drawing.Design.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Drawing.Design.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Drawing.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Drawing.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Dynamic.dll",
|
||||
"build/.NETFramework/v4.7.2/System.EnterpriseServices.Thunk.dll",
|
||||
"build/.NETFramework/v4.7.2/System.EnterpriseServices.Wrapper.dll",
|
||||
"build/.NETFramework/v4.7.2/System.EnterpriseServices.dll",
|
||||
"build/.NETFramework/v4.7.2/System.EnterpriseServices.xml",
|
||||
"build/.NETFramework/v4.7.2/System.IO.Compression.FileSystem.dll",
|
||||
"build/.NETFramework/v4.7.2/System.IO.Compression.FileSystem.xml",
|
||||
"build/.NETFramework/v4.7.2/System.IO.Compression.dll",
|
||||
"build/.NETFramework/v4.7.2/System.IO.Compression.xml",
|
||||
"build/.NETFramework/v4.7.2/System.IO.Log.dll",
|
||||
"build/.NETFramework/v4.7.2/System.IO.Log.xml",
|
||||
"build/.NETFramework/v4.7.2/System.IdentityModel.Selectors.dll",
|
||||
"build/.NETFramework/v4.7.2/System.IdentityModel.Selectors.xml",
|
||||
"build/.NETFramework/v4.7.2/System.IdentityModel.Services.dll",
|
||||
"build/.NETFramework/v4.7.2/System.IdentityModel.Services.xml",
|
||||
"build/.NETFramework/v4.7.2/System.IdentityModel.dll",
|
||||
"build/.NETFramework/v4.7.2/System.IdentityModel.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Linq.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Management.Instrumentation.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Management.Instrumentation.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Management.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Management.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Messaging.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Messaging.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Net.Http.WebRequest.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Net.Http.WebRequest.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Net.Http.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Net.Http.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Net.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Net.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Numerics.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Numerics.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Printing.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Printing.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Reflection.Context.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Reflection.Context.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Runtime.Caching.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Runtime.Caching.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Runtime.DurableInstancing.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Runtime.DurableInstancing.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Runtime.Remoting.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Runtime.Remoting.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Runtime.Serialization.Formatters.Soap.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Runtime.Serialization.Formatters.Soap.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Runtime.Serialization.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Runtime.Serialization.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Security.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Security.xml",
|
||||
"build/.NETFramework/v4.7.2/System.ServiceModel.Activation.dll",
|
||||
"build/.NETFramework/v4.7.2/System.ServiceModel.Activation.xml",
|
||||
"build/.NETFramework/v4.7.2/System.ServiceModel.Activities.dll",
|
||||
"build/.NETFramework/v4.7.2/System.ServiceModel.Activities.xml",
|
||||
"build/.NETFramework/v4.7.2/System.ServiceModel.Channels.dll",
|
||||
"build/.NETFramework/v4.7.2/System.ServiceModel.Channels.xml",
|
||||
"build/.NETFramework/v4.7.2/System.ServiceModel.Discovery.dll",
|
||||
"build/.NETFramework/v4.7.2/System.ServiceModel.Discovery.xml",
|
||||
"build/.NETFramework/v4.7.2/System.ServiceModel.Routing.dll",
|
||||
"build/.NETFramework/v4.7.2/System.ServiceModel.Routing.xml",
|
||||
"build/.NETFramework/v4.7.2/System.ServiceModel.Web.dll",
|
||||
"build/.NETFramework/v4.7.2/System.ServiceModel.Web.xml",
|
||||
"build/.NETFramework/v4.7.2/System.ServiceModel.dll",
|
||||
"build/.NETFramework/v4.7.2/System.ServiceModel.xml",
|
||||
"build/.NETFramework/v4.7.2/System.ServiceProcess.dll",
|
||||
"build/.NETFramework/v4.7.2/System.ServiceProcess.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Speech.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Speech.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Threading.Tasks.Dataflow.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Transactions.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Transactions.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Web.Abstractions.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Web.ApplicationServices.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Web.ApplicationServices.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Web.DataVisualization.Design.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Web.DataVisualization.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Web.DataVisualization.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Web.DynamicData.Design.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Web.DynamicData.Design.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Web.DynamicData.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Web.DynamicData.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Web.Entity.Design.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Web.Entity.Design.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Web.Entity.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Web.Entity.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Web.Extensions.Design.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Web.Extensions.Design.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Web.Extensions.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Web.Extensions.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Web.Mobile.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Web.Mobile.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Web.RegularExpressions.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Web.RegularExpressions.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Web.Routing.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Web.Services.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Web.Services.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Web.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Web.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Windows.Controls.Ribbon.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Windows.Controls.Ribbon.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Windows.Forms.DataVisualization.Design.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Windows.Forms.DataVisualization.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Windows.Forms.DataVisualization.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Windows.Forms.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Windows.Forms.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Windows.Input.Manipulations.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Windows.Input.Manipulations.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Windows.Presentation.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Windows.Presentation.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Windows.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Workflow.Activities.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Workflow.Activities.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Workflow.ComponentModel.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Workflow.ComponentModel.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Workflow.Runtime.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Workflow.Runtime.xml",
|
||||
"build/.NETFramework/v4.7.2/System.WorkflowServices.dll",
|
||||
"build/.NETFramework/v4.7.2/System.WorkflowServices.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Xaml.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Xaml.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Xml.Linq.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Xml.Linq.xml",
|
||||
"build/.NETFramework/v4.7.2/System.Xml.Serialization.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Xml.dll",
|
||||
"build/.NETFramework/v4.7.2/System.Xml.xml",
|
||||
"build/.NETFramework/v4.7.2/System.dll",
|
||||
"build/.NETFramework/v4.7.2/System.xml",
|
||||
"build/.NETFramework/v4.7.2/UIAutomationClient.dll",
|
||||
"build/.NETFramework/v4.7.2/UIAutomationClient.xml",
|
||||
"build/.NETFramework/v4.7.2/UIAutomationClientsideProviders.dll",
|
||||
"build/.NETFramework/v4.7.2/UIAutomationClientsideProviders.xml",
|
||||
"build/.NETFramework/v4.7.2/UIAutomationProvider.dll",
|
||||
"build/.NETFramework/v4.7.2/UIAutomationProvider.xml",
|
||||
"build/.NETFramework/v4.7.2/UIAutomationTypes.dll",
|
||||
"build/.NETFramework/v4.7.2/UIAutomationTypes.xml",
|
||||
"build/.NETFramework/v4.7.2/WindowsBase.dll",
|
||||
"build/.NETFramework/v4.7.2/WindowsBase.xml",
|
||||
"build/.NETFramework/v4.7.2/WindowsFormsIntegration.dll",
|
||||
"build/.NETFramework/v4.7.2/WindowsFormsIntegration.xml",
|
||||
"build/.NETFramework/v4.7.2/XamlBuildTask.dll",
|
||||
"build/.NETFramework/v4.7.2/XamlBuildTask.xml",
|
||||
"build/.NETFramework/v4.7.2/mscorlib.dll",
|
||||
"build/.NETFramework/v4.7.2/mscorlib.xml",
|
||||
"build/.NETFramework/v4.7.2/namespaces.xml",
|
||||
"build/.NETFramework/v4.7.2/sysglobl.dll",
|
||||
"build/.NETFramework/v4.7.2/sysglobl.xml",
|
||||
"build/Microsoft.NETFramework.ReferenceAssemblies.net472.targets",
|
||||
"microsoft.netframework.referenceassemblies.net472.1.0.2.nupkg.sha512",
|
||||
"microsoft.netframework.referenceassemblies.net472.nuspec"
|
||||
]
|
||||
},
|
||||
"Newtonsoft.Json/13.0.3": {
|
||||
"sha512": "HrC5BXdl00IP9zeV+0Z848QWPAoCr9P3bDEZguI+gkLcBKAOxix/tLEAAHC+UvDNPv4a2d18lOReHMOagPa+zQ==",
|
||||
"type": "package",
|
||||
"path": "newtonsoft.json/13.0.3",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
"LICENSE.md",
|
||||
"README.md",
|
||||
"lib/net20/Newtonsoft.Json.dll",
|
||||
"lib/net20/Newtonsoft.Json.xml",
|
||||
"lib/net35/Newtonsoft.Json.dll",
|
||||
"lib/net35/Newtonsoft.Json.xml",
|
||||
"lib/net40/Newtonsoft.Json.dll",
|
||||
"lib/net40/Newtonsoft.Json.xml",
|
||||
"lib/net45/Newtonsoft.Json.dll",
|
||||
"lib/net45/Newtonsoft.Json.xml",
|
||||
"lib/net6.0/Newtonsoft.Json.dll",
|
||||
"lib/net6.0/Newtonsoft.Json.xml",
|
||||
"lib/netstandard1.0/Newtonsoft.Json.dll",
|
||||
"lib/netstandard1.0/Newtonsoft.Json.xml",
|
||||
"lib/netstandard1.3/Newtonsoft.Json.dll",
|
||||
"lib/netstandard1.3/Newtonsoft.Json.xml",
|
||||
"lib/netstandard2.0/Newtonsoft.Json.dll",
|
||||
"lib/netstandard2.0/Newtonsoft.Json.xml",
|
||||
"newtonsoft.json.13.0.3.nupkg.sha512",
|
||||
"newtonsoft.json.nuspec",
|
||||
"packageIcon.png"
|
||||
]
|
||||
},
|
||||
"OxyPlot.Core/2.2.0": {
|
||||
"sha512": "QhXNdXR5FPpro/VoLx3BOp6AhQo7YrbfmWEZ9cgY+pnYM7RYORZjnu+aDMA8ka9A1r8hLkX//NbCPZNUv+l8qA==",
|
||||
"type": "package",
|
||||
"path": "oxyplot.core/2.2.0",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
"OxyPlot_128.png",
|
||||
"README.md",
|
||||
"lib/net462/OxyPlot.dll",
|
||||
"lib/net462/OxyPlot.xml",
|
||||
"lib/net6.0/OxyPlot.dll",
|
||||
"lib/net6.0/OxyPlot.xml",
|
||||
"lib/net8.0/OxyPlot.dll",
|
||||
"lib/net8.0/OxyPlot.xml",
|
||||
"lib/netstandard2.0/OxyPlot.dll",
|
||||
"lib/netstandard2.0/OxyPlot.xml",
|
||||
"oxyplot.core.2.2.0.nupkg.sha512",
|
||||
"oxyplot.core.nuspec"
|
||||
]
|
||||
},
|
||||
"OxyPlot.Wpf/2.2.0": {
|
||||
"sha512": "69KzgsMWpJSZmeXZt07FwfV7B1D4CM1nl0MWMj4wjrCsb3USBMo32up1+fQIjxp5tHCPdGwX9VWhSxW8nsY7pQ==",
|
||||
"type": "package",
|
||||
"path": "oxyplot.wpf/2.2.0",
|
||||
"hasTools": true,
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
"OxyPlot_128.png",
|
||||
"README.md",
|
||||
"lib/net462/OxyPlot.Wpf.dll",
|
||||
"lib/net462/OxyPlot.Wpf.xml",
|
||||
"lib/net6.0-windows7.0/OxyPlot.Wpf.dll",
|
||||
"lib/net6.0-windows7.0/OxyPlot.Wpf.xml",
|
||||
"lib/net8.0-windows7.0/OxyPlot.Wpf.dll",
|
||||
"lib/net8.0-windows7.0/OxyPlot.Wpf.xml",
|
||||
"oxyplot.wpf.2.2.0.nupkg.sha512",
|
||||
"oxyplot.wpf.nuspec",
|
||||
"tools/VisualStudioToolsManifest.xml"
|
||||
]
|
||||
},
|
||||
"OxyPlot.Wpf.Shared/2.2.0": {
|
||||
"sha512": "JoOD/feTOlKFmgXqeTNrl4Ze0i0L6WizPapNw9pXwot+cnI0qhFgYv3tFjlSdu51hZw0EgmcgeRXMtm5bkueYA==",
|
||||
"type": "package",
|
||||
"path": "oxyplot.wpf.shared/2.2.0",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
"OxyPlot_128.png",
|
||||
"README.md",
|
||||
"lib/net462/OxyPlot.Wpf.Shared.dll",
|
||||
"lib/net462/OxyPlot.Wpf.Shared.xml",
|
||||
"lib/net6.0-windows7.0/OxyPlot.Wpf.Shared.dll",
|
||||
"lib/net6.0-windows7.0/OxyPlot.Wpf.Shared.xml",
|
||||
"lib/net8.0-windows7.0/OxyPlot.Wpf.Shared.dll",
|
||||
"lib/net8.0-windows7.0/OxyPlot.Wpf.Shared.xml",
|
||||
"oxyplot.wpf.shared.2.2.0.nupkg.sha512",
|
||||
"oxyplot.wpf.shared.nuspec"
|
||||
]
|
||||
}
|
||||
},
|
||||
"projectFileDependencyGroups": {
|
||||
".NETFramework,Version=v4.7.2": [
|
||||
"Newtonsoft.Json >= 13.0.3",
|
||||
"OxyPlot.Wpf >= 2.2.0"
|
||||
]
|
||||
},
|
||||
"packageFolders": {
|
||||
"C:\\Users\\Administrator\\.nuget\\packages\\": {}
|
||||
},
|
||||
"project": {
|
||||
"version": "1.0.0",
|
||||
"restore": {
|
||||
"projectUniqueName": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\YKC.csproj",
|
||||
"projectName": "YKC",
|
||||
"projectPath": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\YKC.csproj",
|
||||
"packagesPath": "C:\\Users\\Administrator\\.nuget\\packages\\",
|
||||
"outputPath": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\obj\\",
|
||||
"projectStyle": "PackageReference",
|
||||
"skipContentFileWrite": true,
|
||||
"UsingMicrosoftNETSdk": false,
|
||||
"configFilePaths": [
|
||||
"C:\\Users\\Administrator\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
||||
],
|
||||
"originalTargetFrameworks": [
|
||||
"net472"
|
||||
],
|
||||
"sources": {
|
||||
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
|
||||
"https://api.nuget.org/v3/index.json": {}
|
||||
},
|
||||
"frameworks": {
|
||||
"net472": {
|
||||
"framework": "net472",
|
||||
"projectReferences": {}
|
||||
}
|
||||
},
|
||||
"restoreAuditProperties": {
|
||||
"enableAudit": "true",
|
||||
"auditLevel": "low",
|
||||
"auditMode": "direct"
|
||||
}
|
||||
},
|
||||
"frameworks": {
|
||||
"net472": {
|
||||
"framework": "net472",
|
||||
"dependencies": {
|
||||
"Newtonsoft.Json": {
|
||||
"target": "Package",
|
||||
"version": "[13.0.3, )"
|
||||
},
|
||||
"OxyPlot.Wpf": {
|
||||
"target": "Package",
|
||||
"version": "[2.2.0, )"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"runtimes": {
|
||||
"win": {
|
||||
"#import": []
|
||||
},
|
||||
"win-arm64": {
|
||||
"#import": []
|
||||
},
|
||||
"win-x64": {
|
||||
"#import": []
|
||||
},
|
||||
"win-x86": {
|
||||
"#import": []
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
15
上位机/YKC/obj/project.nuget.cache
Normal file
15
上位机/YKC/obj/project.nuget.cache
Normal file
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"version": 2,
|
||||
"dgSpecHash": "isVL+vjG9Iw=",
|
||||
"success": true,
|
||||
"projectFilePath": "C:\\Users\\Administrator\\PycharmProjects\\PythonProject\\C#\\YKC\\YKC.csproj",
|
||||
"expectedPackageFiles": [
|
||||
"C:\\Users\\Administrator\\.nuget\\packages\\microsoft.netframework.referenceassemblies\\1.0.2\\microsoft.netframework.referenceassemblies.1.0.2.nupkg.sha512",
|
||||
"C:\\Users\\Administrator\\.nuget\\packages\\microsoft.netframework.referenceassemblies.net472\\1.0.2\\microsoft.netframework.referenceassemblies.net472.1.0.2.nupkg.sha512",
|
||||
"C:\\Users\\Administrator\\.nuget\\packages\\newtonsoft.json\\13.0.3\\newtonsoft.json.13.0.3.nupkg.sha512",
|
||||
"C:\\Users\\Administrator\\.nuget\\packages\\oxyplot.core\\2.2.0\\oxyplot.core.2.2.0.nupkg.sha512",
|
||||
"C:\\Users\\Administrator\\.nuget\\packages\\oxyplot.wpf\\2.2.0\\oxyplot.wpf.2.2.0.nupkg.sha512",
|
||||
"C:\\Users\\Administrator\\.nuget\\packages\\oxyplot.wpf.shared\\2.2.0\\oxyplot.wpf.shared.2.2.0.nupkg.sha512"
|
||||
],
|
||||
"logs": []
|
||||
}
|
||||
Reference in New Issue
Block a user