chore: Make several control dependency properties public.

Add VSCode debug/tasks configs for running/building the demo across multiple .NET frameworks (.vscode/launch.json, .vscode/tasks.json). Update HandyControl_Net_GE45.csproj PreBuild target to run only for cross-targeting builds. Change access modifiers on multiple dependency properties and related CLR properties across shared controls (ColorPicker, ImageViewer, NumericUpDown, TimeBar, PopupWindow) to expose the DP fields publicly while making setters internal where appropriate to restrict external mutation. Also make SideMenuItem.Role setter public. These changes expose select properties for external use and adjust build/debug convenience for development.
This commit is contained in:
NaBian committed 2026-05-27 22:46:31 +08:00
1 parent 1c2e1848b5
commit 2ea451fe82
9 files changed
+501 -36

No files matched your search

+195
View File
@@ -0,0 +1,195 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "Run HandyControlDemo (netcoreapp3.0)",
"type": "coreclr",
"request": "launch",
"program": "dotnet",
"args": ["run", "--project", "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj", "-f", "netcoreapp3.0"],
"cwd": "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45",
"console": "integratedTerminal",
"stopAtEntry": false
},
{
"name": "Run HandyControlDemo (netcoreapp3.1)",
"type": "coreclr",
"request": "launch",
"program": "dotnet",
"args": ["run", "--project", "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj", "-f", "netcoreapp3.1"],
"cwd": "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45",
"console": "integratedTerminal",
"stopAtEntry": false
},
{
"name": "Run HandyControlDemo (net45)",
"type": "coreclr",
"request": "launch",
"program": "dotnet",
"args": ["run", "--project", "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj", "-f", "net45"],
"cwd": "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45",
"console": "integratedTerminal",
"stopAtEntry": false
},
{
"name": "Run HandyControlDemo (net451)",
"type": "coreclr",
"request": "launch",
"program": "dotnet",
"args": ["run", "--project", "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj", "-f", "net451"],
"cwd": "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45",
"console": "integratedTerminal",
"stopAtEntry": false
},
{
"name": "Run HandyControlDemo (net452)",
"type": "coreclr",
"request": "launch",
"program": "dotnet",
"args": ["run", "--project", "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj", "-f", "net452"],
"cwd": "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45",
"console": "integratedTerminal",
"stopAtEntry": false
},
{
"name": "Run HandyControlDemo (net46)",
"type": "coreclr",
"request": "launch",
"program": "dotnet",
"args": ["run", "--project", "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj", "-f", "net46"],
"cwd": "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45",
"console": "integratedTerminal",
"stopAtEntry": false
},
{
"name": "Run HandyControlDemo (net461)",
"type": "coreclr",
"request": "launch",
"program": "dotnet",
"args": ["run", "--project", "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj", "-f", "net461"],
"cwd": "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45",
"console": "integratedTerminal",
"stopAtEntry": false
},
{
"name": "Run HandyControlDemo (net462)",
"type": "coreclr",
"request": "launch",
"program": "dotnet",
"args": ["run", "--project", "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj", "-f", "net462"],
"cwd": "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45",
"console": "integratedTerminal",
"stopAtEntry": false
},
{
"name": "Run HandyControlDemo (net47)",
"type": "coreclr",
"request": "launch",
"program": "dotnet",
"args": ["run", "--project", "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj", "-f", "net47"],
"cwd": "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45",
"console": "integratedTerminal",
"stopAtEntry": false
},
{
"name": "Run HandyControlDemo (net471)",
"type": "coreclr",
"request": "launch",
"program": "dotnet",
"args": ["run", "--project", "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj", "-f", "net471"],
"cwd": "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45",
"console": "integratedTerminal",
"stopAtEntry": false
},
{
"name": "Run HandyControlDemo (net472)",
"type": "coreclr",
"request": "launch",
"program": "dotnet",
"args": ["run", "--project", "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj", "-f", "net472"],
"cwd": "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45",
"console": "integratedTerminal",
"stopAtEntry": false
},
{
"name": "Run HandyControlDemo (net48)",
"type": "coreclr",
"request": "launch",
"program": "dotnet",
"args": ["run", "--project", "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj", "-f", "net48"],
"cwd": "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45",
"console": "integratedTerminal",
"stopAtEntry": false
},
{
"name": "Run HandyControlDemo (net481)",
"type": "coreclr",
"request": "launch",
"program": "dotnet",
"args": ["run", "--project", "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj", "-f", "net481"],
"cwd": "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45",
"console": "integratedTerminal",
"stopAtEntry": false
},
{
"name": "Run HandyControlDemo (net5.0-windows)",
"type": "coreclr",
"request": "launch",
"program": "dotnet",
"args": ["run", "--project", "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj", "-f", "net5.0-windows"],
"cwd": "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45",
"console": "integratedTerminal",
"stopAtEntry": false
},
{
"name": "Run HandyControlDemo (net6.0-windows)",
"type": "coreclr",
"request": "launch",
"program": "dotnet",
"args": ["run", "--project", "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj", "-f", "net6.0-windows"],
"cwd": "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45",
"console": "integratedTerminal",
"stopAtEntry": false
},
{
"name": "Run HandyControlDemo (net7.0-windows)",
"type": "coreclr",
"request": "launch",
"program": "dotnet",
"args": ["run", "--project", "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj", "-f", "net7.0-windows"],
"cwd": "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45",
"console": "integratedTerminal",
"stopAtEntry": false
},
{
"name": "Run HandyControlDemo (net8.0-windows)",
"type": "coreclr",
"request": "launch",
"program": "dotnet",
"args": ["run", "--project", "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj", "-f", "net8.0-windows"],
"cwd": "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45",
"console": "integratedTerminal",
"stopAtEntry": false
},
{
"name": "Run HandyControlDemo (net9.0-windows)",
"type": "coreclr",
"request": "launch",
"program": "dotnet",
"args": ["run", "--project", "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj", "-f", "net9.0-windows"],
"cwd": "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45",
"console": "integratedTerminal",
"stopAtEntry": false
},
{
"name": "Run HandyControlDemo (net10.0-windows)",
"type": "coreclr",
"request": "launch",
"program": "dotnet",
"args": ["run", "--project", "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj", "-f", "net10.0-windows"],
"cwd": "${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45",
"console": "integratedTerminal",
"stopAtEntry": false
}
]
}
+270
View File
@@ -0,0 +1,270 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "build-hcdemo-all-frameworks",
"type": "shell",
"command": "dotnet",
"args": [
"build",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-c",
"Debug",
"-v",
"minimal"
],
"problemMatcher": "$msCompile",
"group": {
"kind": "build",
"isDefault": true
}
},
{
"label": "run-hcdemo-net10.0-windows",
"type": "shell",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-f",
"net10.0-windows"
],
"problemMatcher": "$msCompile"
},
{
"label": "run-hcdemo-netcoreapp3.0",
"type": "shell",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-f",
"netcoreapp3.0"
],
"problemMatcher": "$msCompile"
},
{
"label": "run-hcdemo-netcoreapp3.1",
"type": "shell",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-f",
"netcoreapp3.1"
],
"problemMatcher": "$msCompile"
},
{
"label": "run-hcdemo-net45",
"type": "shell",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-f",
"net45"
],
"problemMatcher": "$msCompile"
},
{
"label": "run-hcdemo-net451",
"type": "shell",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-f",
"net451"
],
"problemMatcher": "$msCompile"
},
{
"label": "run-hcdemo-net452",
"type": "shell",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-f",
"net452"
],
"problemMatcher": "$msCompile"
},
{
"label": "run-hcdemo-net46",
"type": "shell",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-f",
"net46"
],
"problemMatcher": "$msCompile"
},
{
"label": "run-hcdemo-net461",
"type": "shell",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-f",
"net461"
],
"problemMatcher": "$msCompile"
},
{
"label": "run-hcdemo-net462",
"type": "shell",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-f",
"net462"
],
"problemMatcher": "$msCompile"
},
{
"label": "run-hcdemo-net47",
"type": "shell",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-f",
"net47"
],
"problemMatcher": "$msCompile"
},
{
"label": "run-hcdemo-net471",
"type": "shell",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-f",
"net471"
],
"problemMatcher": "$msCompile"
},
{
"label": "run-hcdemo-net472",
"type": "shell",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-f",
"net472"
],
"problemMatcher": "$msCompile"
},
{
"label": "run-hcdemo-net48",
"type": "shell",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-f",
"net48"
],
"problemMatcher": "$msCompile"
},
{
"label": "run-hcdemo-net481",
"type": "shell",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-f",
"net481"
],
"problemMatcher": "$msCompile"
},
{
"label": "run-hcdemo-net5.0-windows",
"type": "shell",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-f",
"net5.0-windows"
],
"problemMatcher": "$msCompile"
},
{
"label": "run-hcdemo-net6.0-windows",
"type": "shell",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-f",
"net6.0-windows"
],
"problemMatcher": "$msCompile"
},
{
"label": "run-hcdemo-net7.0-windows",
"type": "shell",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-f",
"net7.0-windows"
],
"problemMatcher": "$msCompile"
},
{
"label": "run-hcdemo-net8.0-windows",
"type": "shell",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-f",
"net8.0-windows"
],
"problemMatcher": "$msCompile"
},
{
"label": "run-hcdemo-net9.0-windows",
"type": "shell",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj",
"-f",
"net9.0-windows"
],
"problemMatcher": "$msCompile"
}
]
}