Compare commits
147 Commits
v11.0.7.2
...
v11.1.0-rc
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0cc40c09c9 | ||
|
|
0d8ea070cc | ||
|
|
d959ef234c | ||
|
|
8ebc6878b1 | ||
|
|
9d2b2d37e2 | ||
|
|
8982e610e2 | ||
|
|
31e2c009fb | ||
|
|
9259f06f57 | ||
|
|
724a528b16 | ||
|
|
09d23f8eaa | ||
|
|
d3c909a83c | ||
|
|
b505445b77 | ||
|
|
74c1b2f2ee | ||
|
|
8afe3a87bd | ||
|
|
b5f4bacece | ||
|
|
c46e6b9cf9 | ||
|
|
ccc25b4801 | ||
|
|
e6541b4741 | ||
|
|
c4f5754129 | ||
|
|
d7fce5c180 | ||
|
|
4f685c712a | ||
|
|
1378219b7a | ||
|
|
0979141f54 | ||
|
|
6a94e403c9 | ||
|
|
2da1ecf5a0 | ||
|
|
915c45c21f | ||
|
|
db137ef718 | ||
|
|
f66edd5782 | ||
|
|
5b48f77dfb | ||
|
|
a225feeb0d | ||
|
|
99ddfcc952 | ||
|
|
0daa884003 | ||
|
|
93df1abf4a | ||
|
|
942229acdc | ||
|
|
139c0b926c | ||
|
|
694dd863fa | ||
|
|
b378cdf880 | ||
|
|
57646f5390 | ||
|
|
9e5d5298c4 | ||
|
|
0fb1e585db | ||
|
|
d5dce72a34 | ||
|
|
b1a29c67a9 | ||
|
|
471106f825 | ||
|
|
ec070d2f67 | ||
|
|
e263c917de | ||
|
|
911a07d6a1 | ||
|
|
f65ec4bb05 | ||
|
|
e6e7d6042c | ||
|
|
e44499db4e | ||
|
|
b45272daa4 | ||
|
|
2d61d93c93 | ||
|
|
a49111c0c2 | ||
|
|
9a738603d0 | ||
|
|
49c7799431 | ||
|
|
634e792f61 | ||
|
|
5212f255e6 | ||
|
|
e20f0a4161 | ||
|
|
20b2cf3aaa | ||
|
|
cf54ad51f9 | ||
|
|
3dff0ccad5 | ||
|
|
5036a53b7c | ||
|
|
8c1c48bcf5 | ||
|
|
67752d43d3 | ||
|
|
5947fc70eb | ||
|
|
9e26d5f20b | ||
|
|
3be9b72148 | ||
|
|
75ecc525a7 | ||
|
|
0c1922a08b | ||
|
|
92e0362eb6 | ||
|
|
3716cc3bcc | ||
|
|
e24e847f4b | ||
|
|
ccc423c44e | ||
|
|
28b89e2535 | ||
|
|
52bfeae099 | ||
|
|
6215a6a622 | ||
|
|
c2c41f9275 | ||
|
|
d7de64a4ef | ||
|
|
04ffd38e14 | ||
|
|
38958c1326 | ||
|
|
9bb50a7190 | ||
|
|
2e59ed73aa | ||
|
|
b3dc2425f8 | ||
|
|
4e7681d4d4 | ||
|
|
48235b63a2 | ||
|
|
8de7a1ae8c | ||
|
|
8142dd48cd | ||
|
|
76c9b57a4b | ||
|
|
071a75a740 | ||
|
|
4782dab745 | ||
|
|
90fbd2a7e5 | ||
|
|
1f0d83ded4 | ||
|
|
6ff3ebc55b | ||
|
|
3813091668 | ||
|
|
47e5300a46 | ||
|
|
41662706ab | ||
|
|
91aa717189 | ||
|
|
f6b936431a | ||
|
|
8524e56166 | ||
|
|
8328c69c46 | ||
|
|
2470522209 | ||
|
|
f1d87f7c4d | ||
|
|
07278047a4 | ||
|
|
6df8ea2101 | ||
|
|
3b3fbd1265 | ||
|
|
8b4a670be8 | ||
|
|
dad406e995 | ||
|
|
13e9364477 | ||
|
|
3018f17e6d | ||
|
|
627aa65e1f | ||
|
|
b83525092c | ||
|
|
dd3c4bdbae | ||
|
|
17fe50d40b | ||
|
|
27c4794c6c | ||
|
|
a678a0f39d | ||
|
|
33c56f87f8 | ||
|
|
ffb1b9c0e8 | ||
|
|
ef272815ea | ||
|
|
d967583228 | ||
|
|
ef36239161 | ||
|
|
bb3966c36c | ||
|
|
4b7674d7e2 | ||
|
|
166490195f | ||
|
|
3d267139fe | ||
|
|
ede0f9f3db | ||
|
|
f140a331d7 | ||
|
|
bf1a2cac39 | ||
|
|
4d14c846b0 | ||
|
|
46e57925b9 | ||
|
|
ca8f8d6c15 | ||
|
|
c2d1d0c4eb | ||
|
|
3fce633195 | ||
|
|
30a7466fc9 | ||
|
|
7fa99ed910 | ||
|
|
801fea8269 | ||
|
|
fb0b4a08ac | ||
|
|
8dee3ec364 | ||
|
|
0ddcb39302 | ||
|
|
71e276d478 | ||
|
|
833ccadb58 | ||
|
|
d33f38ea70 | ||
|
|
386a3d297c | ||
|
|
d19cc9d7b9 | ||
|
|
30081a1717 | ||
|
|
0d68df3711 | ||
|
|
157d22a8f9 | ||
|
|
4efc6bf4ec | ||
|
|
3a83c67c6c |
59
.github/workflows/deploy.yml
vendored
@@ -2,52 +2,43 @@ name: Deploy to GitHub Pages
|
|||||||
|
|
||||||
env:
|
env:
|
||||||
PROJECT_PATH: demo/Semi.Avalonia.Demo.Web/Semi.Avalonia.Demo.Web.csproj
|
PROJECT_PATH: demo/Semi.Avalonia.Demo.Web/Semi.Avalonia.Demo.Web.csproj
|
||||||
OUTPUT_PATH: demo/Semi.Avalonia.Demo.Web/bin/Release/net7.0/browser-wasm/AppBundle
|
OUTPUT_PATH: demo/Semi.Avalonia.Demo.Web/bin/Release/net8.0-browser/publish/wwwroot
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches: [ "deploy" ]
|
branches: [ "action/deploy" ]
|
||||||
pull_request:
|
pull_request:
|
||||||
branches: [ "deploy" ]
|
branches: [ "action/deploy" ]
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
deploy-to-github-pages:
|
deploy-to-github-pages:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v4.1.1
|
uses: actions/checkout@v4.1.1
|
||||||
|
|
||||||
- name: Setup .NET 7
|
- name: Setup .NET 8
|
||||||
uses: actions/setup-dotnet@v4
|
uses: actions/setup-dotnet@v4
|
||||||
with:
|
with:
|
||||||
dotnet-version: 7.0.405
|
dotnet-version: 8.0.x
|
||||||
|
|
||||||
- name: Install wasm-tools
|
- name: Install wasm-tools
|
||||||
run: dotnet workload install wasm-tools wasm-tools-net7
|
run: dotnet workload install wasm-tools
|
||||||
|
|
||||||
- name: Install DotNetCompress
|
- name: Publish .NET Project
|
||||||
run: dotnet tool install --global DotNetCompress --version 3.0.0 --no-cache
|
run: dotnet publish $PROJECT_PATH -c Release --nologo
|
||||||
|
|
||||||
- name: Publish .NET Project
|
- name: Change base-tag in index.html
|
||||||
run: dotnet publish $PROJECT_PATH -c Release -o release --nologo
|
run: sed -i 's/<base href="\/" \/>/<base href="\/Semi.Avalonia\/" \/>/g' $OUTPUT_PATH/index.html
|
||||||
|
|
||||||
- name: Change base-tag in index.html
|
- name: copy index.html to 404.html
|
||||||
run: sed -i 's/<base href="\/" \/>/<base href="\/Semi.Avalonia\/" \/>/g' $OUTPUT_PATH/index.html
|
run: cp $OUTPUT_PATH/index.html $OUTPUT_PATH/404.html
|
||||||
|
|
||||||
- name: copy index.html to 404.html
|
- name: Add .nojekyll file
|
||||||
run: cp $OUTPUT_PATH/index.html $OUTPUT_PATH/404.html
|
run: touch $OUTPUT_PATH/.nojekyll
|
||||||
|
|
||||||
- name: Compress Output using Brotli
|
- name: Commit wwwroot to GitHub Pages
|
||||||
run: DotNetCompress -d $OUTPUT_PATH -p "*.dll" "*.js" "*.wasm" --format br --threads 4
|
uses: JamesIves/github-pages-deploy-action@v4.5.0
|
||||||
|
with:
|
||||||
- name: Compress Output using GZip
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
run: DotNetCompress -d $OUTPUT_PATH -p "*.dll" "*.js" "*.wasm" --format gz --threads 4
|
BRANCH: gh-pages
|
||||||
|
FOLDER: ${{ env.OUTPUT_PATH }}
|
||||||
- name: Add .nojekyll file
|
|
||||||
run: touch $OUTPUT_PATH/.nojekyll
|
|
||||||
|
|
||||||
- name: Commit wwwroot to GitHub Pages
|
|
||||||
uses: JamesIves/github-pages-deploy-action@v4.5.0
|
|
||||||
with:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
BRANCH: gh-pages
|
|
||||||
FOLDER: ${{ env.OUTPUT_PATH }}
|
|
||||||
|
|||||||
@@ -2,16 +2,16 @@ name: Pack
|
|||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches: [ "release" ]
|
branches: [ "action/pack" ]
|
||||||
pull_request:
|
pull_request:
|
||||||
branches: [ "release" ]
|
branches: [ "action/pack" ]
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
nuget_desktop:
|
nuget_desktop:
|
||||||
runs-on: windows-latest
|
runs-on: windows-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4.1.1
|
||||||
|
|
||||||
- name: Nuget Semi.Avalonia
|
- name: Nuget Semi.Avalonia
|
||||||
run: dotnet pack ./src/Semi.Avalonia -o ./nugets
|
run: dotnet pack ./src/Semi.Avalonia -o ./nugets
|
||||||
@@ -28,8 +28,8 @@ jobs:
|
|||||||
- name: Desktop
|
- name: Desktop
|
||||||
run: dotnet publish ./demo/Semi.Avalonia.Demo.Desktop -r win-x64 -c Release /p:PublishSingleFile=true /p:IncludeNativeLibrariesForSelfExtract=true --self-contained true
|
run: dotnet publish ./demo/Semi.Avalonia.Demo.Desktop -r win-x64 -c Release /p:PublishSingleFile=true /p:IncludeNativeLibrariesForSelfExtract=true --self-contained true
|
||||||
|
|
||||||
- name: Upload
|
- name: Upload a Build Artifact
|
||||||
uses: actions/upload-artifact@v3.1.2
|
uses: actions/upload-artifact@v4.3.1
|
||||||
with:
|
with:
|
||||||
name: nuget_desktop
|
name: nuget_desktop
|
||||||
path: |
|
path: |
|
||||||
@@ -40,7 +40,7 @@ jobs:
|
|||||||
runs-on: windows-latest
|
runs-on: windows-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4.1.1
|
||||||
|
|
||||||
- name: CD Android
|
- name: CD Android
|
||||||
run: cd ./demo/Semi.Avalonia.Demo.Android
|
run: cd ./demo/Semi.Avalonia.Demo.Android
|
||||||
@@ -49,10 +49,10 @@ jobs:
|
|||||||
run: dotnet restore
|
run: dotnet restore
|
||||||
|
|
||||||
- name: Build
|
- name: Build
|
||||||
run: dotnet publish ./demo/Semi.Avalonia.Demo.Android -c Release -f net7.0-android --no-restore
|
run: dotnet publish ./demo/Semi.Avalonia.Demo.Android -c Release -f net8.0-android --no-restore
|
||||||
|
|
||||||
- name: Upload a Build Artifact
|
- name: Upload a Build Artifact
|
||||||
uses: actions/upload-artifact@v3.1.2
|
uses: actions/upload-artifact@v4.3.1
|
||||||
with:
|
with:
|
||||||
name: android
|
name: android
|
||||||
path: ./**/publish/*Signed.apk
|
path: ./**/publish/*Signed.apk
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
<component name="ProjectRunConfigurationManager">
|
<component name="ProjectRunConfigurationManager">
|
||||||
<configuration default="false" name="SC-Single" type="DotNetFolderPublish" factoryName="Publish to folder">
|
<configuration default="false" name="SC-Single" type="DotNetFolderPublish" factoryName="Publish to folder">
|
||||||
<riderPublish configuration="Release" include_native_libs_for_self_extract="true" platform="Any CPU" produce_single_file="true" runtime="win-x64" self_contained="true" target_folder="$PROJECT_DIR$/demo/Semi.Avalonia.Demo.Desktop/bin/Release/net7.0/win-x64/publish" target_framework="net7.0" uuid_high="3088527218258560748" uuid_low="-8649338673481336678" />
|
<riderPublish configuration="Release" include_native_libs_for_self_extract="true" platform="Any CPU" produce_single_file="true" runtime="win-x64" self_contained="true" target_folder="$PROJECT_DIR$/demo/Semi.Avalonia.Demo.Desktop/bin/Release/net8.0/win-x64/publish" target_framework="net8.0" uuid_high="3088527218258560748" uuid_low="-8649338673481336678" />
|
||||||
<method v="2" />
|
<method v="2" />
|
||||||
</configuration>
|
</configuration>
|
||||||
</component>
|
</component>
|
||||||
75
README.md
@@ -1,16 +1,24 @@
|
|||||||
# Semi.Avalonia
|
# Semi Avalonia
|
||||||
|
|
||||||
[](https://www.nuget.org/packages/Semi.Avalonia/)
|
[](https://www.nuget.org/packages/Semi.Avalonia/)
|
||||||
[](https://www.nuget.org/packages/Semi.Avalonia/)
|
[](https://www.nuget.org/packages/Semi.Avalonia/)
|
||||||
|
|
||||||
|
[中文](./README_CN.md)
|
||||||
|
|
||||||
Avalonia Theme inspired by Semi Design
|
Avalonia Theme inspired by Semi Design
|
||||||
|
|
||||||
# How to Use
|
If you are looking for more customized controls, Please try [Ursa](https://github.com/irihitech/Ursa.Avalonia)
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## How to Use
|
||||||
|
|
||||||
|
### Installation
|
||||||
|
|
||||||
## Installation
|
|
||||||
```bash
|
```bash
|
||||||
dotnet add package Semi.Avalonia --version 11.0.7
|
dotnet add package Semi.Avalonia
|
||||||
```
|
```
|
||||||
|
|
||||||
Include Semi Design Styles in application:
|
Include Semi Design Styles in application:
|
||||||
|
|
||||||
```xaml
|
```xaml
|
||||||
@@ -22,11 +30,13 @@ Include Semi Design Styles in application:
|
|||||||
That's all.
|
That's all.
|
||||||
|
|
||||||
ColorPicker, DataGrid and TreeDataGrid are distributed in separated packages. Please install if you need.
|
ColorPicker, DataGrid and TreeDataGrid are distributed in separated packages. Please install if you need.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
dotnet add package Semi.Avalonia.ColorPicker --version 11.0.7
|
dotnet add package Semi.Avalonia.ColorPicker
|
||||||
dotnet add package Semi.Avalonia.DataGrid --version 11.0.7
|
dotnet add package Semi.Avalonia.DataGrid
|
||||||
dotnet add package Semi.Avalonia.TreeDataGrid --version 11.0.7
|
dotnet add package Semi.Avalonia.TreeDataGrid
|
||||||
```
|
```
|
||||||
|
|
||||||
```xaml
|
```xaml
|
||||||
<Application.Styles>
|
<Application.Styles>
|
||||||
<StyleInclude Source="avares://Semi.Avalonia.ColorPicker/Index.axaml" />
|
<StyleInclude Source="avares://Semi.Avalonia.ColorPicker/Index.axaml" />
|
||||||
@@ -35,21 +45,55 @@ dotnet add package Semi.Avalonia.TreeDataGrid --version 11.0.7
|
|||||||
</Application.Styles>
|
</Application.Styles>
|
||||||
```
|
```
|
||||||
|
|
||||||
|
If AOT publishing is required, you need to include the rd.xml file in your project:
|
||||||
|
|
||||||
|
```xml
|
||||||
|
<ItemGroup>
|
||||||
|
<RdXmlFile Include="rd.xml"/>
|
||||||
|
</ItemGroup>
|
||||||
|
```
|
||||||
|
|
||||||
|
The contents of the rd.xml file should be as follows:
|
||||||
|
|
||||||
|
```xml
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Directives>
|
||||||
|
<!--
|
||||||
|
This file is part of RdXmlLibrary project.
|
||||||
|
Visit https://github.com/kant2002/rdxmllibrary for latest version.
|
||||||
|
If you have modifications specific to this Nuget package,
|
||||||
|
please contribute back.
|
||||||
|
-->
|
||||||
|
<Application>
|
||||||
|
<Assembly Name="Avalonia.Markup.Xaml" Dynamic="Required All"/>
|
||||||
|
<Assembly Name="Semi.Avalonia" Dynamic="Required All"/>
|
||||||
|
<!-- If you don't use these, please don't include them.
|
||||||
|
<Assembly Name="Semi.Avalonia.DataGrid" Dynamic="Required All"/>
|
||||||
|
<Assembly Name="Semi.Avalonia.ColorPicker" Dynamic="Required All"/>
|
||||||
|
-->
|
||||||
|
</Application>
|
||||||
|
</Directives>
|
||||||
|
```
|
||||||
|
|
||||||
## Demo
|
## Demo
|
||||||
|
|
||||||
You can always download demo executable to play around with Semi Avalonia Themes.
|
You can always download demo executable to play around with Semi Avalonia Themes.
|
||||||
https://github.com/irihitech/Semi.Avalonia/releases
|
<https://github.com/irihitech/Semi.Avalonia/releases>
|
||||||
|
|
||||||
|
## Support
|
||||||
|
|
||||||
|
We offer limited free community support for Semi Avalonia and Ursa. If you have any question or suggestion, feel free to raise issues and discussions via GitHub, and you are welcomed to join our group via FeiShu(Lark)
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
## Version compatibility
|
## Version compatibility
|
||||||
|
|
||||||
| Semi Design Version | Avalonia Version |
|
| Semi Design Version | Avalonia Version |
|
||||||
|:--------------------|:-----------------|
|
|:--------------------|:-----------------|
|
||||||
| 11.0.7 | 11.0.7 |
|
| 11.1.0-rc | >=11.1.0-rc |
|
||||||
|
| 11.0.7 | >=11.0.7 |
|
||||||
| 11.0.1 | <=11.0.6 |
|
| 11.0.1 | <=11.0.6 |
|
||||||
|
|
||||||
## TODO
|
|
||||||
* FocusAdorner
|
|
||||||
|
|
||||||
## Credits
|
## Credits
|
||||||
|
|
||||||
[Semi Design](https://semi.design/)
|
[Semi Design](https://semi.design/)
|
||||||
@@ -62,10 +106,3 @@ https://github.com/irihitech/Semi.Avalonia/releases
|
|||||||
|
|
||||||
[CommunityToolKit](https://github.com/CommunityToolkit/dotnet)
|
[CommunityToolKit](https://github.com/CommunityToolkit/dotnet)
|
||||||
|
|
||||||
## Screenshot
|
|
||||||
|
|
||||||
Light Mode
|
|
||||||

|
|
||||||
|
|
||||||
Dark Mode
|
|
||||||

|
|
||||||
110
README_CN.md
Normal file
@@ -0,0 +1,110 @@
|
|||||||
|
# Semi Avalonia
|
||||||
|
|
||||||
|
[](https://www.nuget.org/packages/Semi.Avalonia/)
|
||||||
|
[](https://www.nuget.org/packages/Semi.Avalonia/)
|
||||||
|
|
||||||
|
[English](./README.md)
|
||||||
|
|
||||||
|
Avalonia UI 控件主题,灵感来自 Semi Design
|
||||||
|
|
||||||
|
如果您希望使用更多的拓展控件,欢迎尝试 [Ursa](https://github.com/irihitech/Ursa.Avalonia)
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## 如何使用
|
||||||
|
|
||||||
|
### 安装
|
||||||
|
|
||||||
|
```bash
|
||||||
|
dotnet add package Semi.Avalonia
|
||||||
|
```
|
||||||
|
|
||||||
|
在样式中引用 Semi 主题:
|
||||||
|
|
||||||
|
```xaml
|
||||||
|
<Application.Styles>
|
||||||
|
<StyleInclude Source="avares://Semi.Avalonia/Themes/Index.axaml" />
|
||||||
|
</Application.Styles>
|
||||||
|
```
|
||||||
|
|
||||||
|
这样就可以了。
|
||||||
|
|
||||||
|
ColorPicker, DataGrid 和 TreeDataGrid 的样式单独分发,如果需要请安装并引用。
|
||||||
|
|
||||||
|
```bash
|
||||||
|
dotnet add package Semi.Avalonia.ColorPicker
|
||||||
|
dotnet add package Semi.Avalonia.DataGrid
|
||||||
|
dotnet add package Semi.Avalonia.TreeDataGrid
|
||||||
|
```
|
||||||
|
|
||||||
|
```xaml
|
||||||
|
<Application.Styles>
|
||||||
|
<StyleInclude Source="avares://Semi.Avalonia.ColorPicker/Index.axaml" />
|
||||||
|
<StyleInclude Source="avares://Semi.Avalonia.DataGrid/Index.axaml" />
|
||||||
|
<StyleInclude Source="avares://Semi.Avalonia.TreeDataGrid/Index.axaml" />
|
||||||
|
</Application.Styles>
|
||||||
|
```
|
||||||
|
|
||||||
|
如果需要进行 AOT 发布,则需要在项目中包含 rd.xml 文件:
|
||||||
|
|
||||||
|
```xml
|
||||||
|
<ItemGroup>
|
||||||
|
<RdXmlFile Include="rd.xml"/>
|
||||||
|
</ItemGroup>
|
||||||
|
```
|
||||||
|
|
||||||
|
rd.xml 文件的内容如下:
|
||||||
|
|
||||||
|
```xml
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Directives>
|
||||||
|
<!--
|
||||||
|
This file is part of RdXmlLibrary project.
|
||||||
|
Visit https://github.com/kant2002/rdxmllibrary for latest version.
|
||||||
|
If you have modifications specific to this Nuget package,
|
||||||
|
please contribute back.
|
||||||
|
-->
|
||||||
|
<Application>
|
||||||
|
<Assembly Name="Avalonia.Markup.Xaml" Dynamic="Required All"/>
|
||||||
|
<Assembly Name="Semi.Avalonia" Dynamic="Required All"/>
|
||||||
|
<!-- If you don't use these, please don't include them.
|
||||||
|
<Assembly Name="Semi.Avalonia.DataGrid" Dynamic="Required All"/>
|
||||||
|
<Assembly Name="Semi.Avalonia.ColorPicker" Dynamic="Required All"/>
|
||||||
|
-->
|
||||||
|
</Application>
|
||||||
|
</Directives>
|
||||||
|
```
|
||||||
|
|
||||||
|
## 示例
|
||||||
|
|
||||||
|
您可以从 Semi Avalonia 的 release 页下载并试用 Semi Avalonia 的展示应用。
|
||||||
|
|
||||||
|
<https://github.com/irihitech/Semi.Avalonia/releases>
|
||||||
|
|
||||||
|
## 社区支持
|
||||||
|
|
||||||
|
我们提供有限度的免费社区支持,如果您有任何问题或建议,除了在GitHub上提交issue或发起讨论,也欢迎加入我们的飞书交流群:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
|
||||||
|
## 版本兼容性
|
||||||
|
|
||||||
|
| Semi Design Version | Avalonia Version |
|
||||||
|
|:--------------------|:-----------------|
|
||||||
|
| 11.1.0-rc | >=11.1.0-rc |
|
||||||
|
| 11.0.7 | >=11.0.7 |
|
||||||
|
| 11.0.1 | <=11.0.6 |
|
||||||
|
|
||||||
|
## 致谢
|
||||||
|
|
||||||
|
[Semi Design](https://semi.design/)
|
||||||
|
|
||||||
|
[Avalonia](https://github.com/AvaloniaUI/Avalonia)
|
||||||
|
|
||||||
|
[FluentAvalonia](https://github.com/amwx/FluentAvalonia)
|
||||||
|
|
||||||
|
[Material Design Icons](https://pictogrammers.com/library/mdi/)
|
||||||
|
|
||||||
|
[CommunityToolKit](https://github.com/CommunityToolkit/dotnet)
|
||||||
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
<Project>
|
<Project>
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
<AvaloniaVersion>11.0.7</AvaloniaVersion>
|
<AvaloniaVersion>11.1.0-rc2</AvaloniaVersion>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
</Project>
|
</Project>
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<OutputType>Exe</OutputType>
|
<OutputType>Exe</OutputType>
|
||||||
<TargetFramework>net7.0-android</TargetFramework>
|
<TargetFramework>net8.0-android</TargetFramework>
|
||||||
<SupportedOSPlatformVersion>21</SupportedOSPlatformVersion>
|
<SupportedOSPlatformVersion>21</SupportedOSPlatformVersion>
|
||||||
<ApplicationId>com.irihitech.Semi.Avalonia</ApplicationId>
|
<ApplicationId>com.irihitech.Semi.Avalonia</ApplicationId>
|
||||||
<ApplicationVersion>1</ApplicationVersion>
|
<ApplicationVersion>1</ApplicationVersion>
|
||||||
|
|||||||
3
demo/Semi.Avalonia.Demo.Desktop/Roots.xml
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<linker>
|
||||||
|
<assembly fullname="Semi.Avalonia.Demo" preserve="All"/>
|
||||||
|
</linker>
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<OutputType>WinExe</OutputType>
|
<OutputType>WinExe</OutputType>
|
||||||
<TargetFramework>net7.0</TargetFramework>
|
<TargetFramework>net8.0</TargetFramework>
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
<BuiltInComInteropSupport>true</BuiltInComInteropSupport>
|
<BuiltInComInteropSupport>true</BuiltInComInteropSupport>
|
||||||
<!-- Uncomment below to enable Native AOT compilation-->
|
<!-- Uncomment below to enable Native AOT compilation-->
|
||||||
@@ -11,12 +11,17 @@
|
|||||||
-->
|
-->
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<PropertyGroup Condition="$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net8.0'))">
|
||||||
|
<IsTrimmable>true</IsTrimmable>
|
||||||
|
<PublishTrimmed>true</PublishTrimmed>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<ApplicationManifest>app.manifest</ApplicationManifest>
|
<ApplicationManifest>app.manifest</ApplicationManifest>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<RdXmlFile Include="rd.xml" />
|
<TrimmerRootDescriptor Include="Roots.xml" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|||||||
@@ -1,16 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Directives>
|
|
||||||
<!--
|
|
||||||
This file is part of RdXmlLibrary project.
|
|
||||||
Visit https://github.com/kant2002/rdxmllibrary for latest version.
|
|
||||||
If you have modifications specific to this Nuget package,
|
|
||||||
please contribute back.
|
|
||||||
-->
|
|
||||||
<Application>
|
|
||||||
<Assembly Name="Avalonia.Markup.Xaml" Dynamic="Required All"/>
|
|
||||||
<Assembly Name="Semi.Avalonia" Dynamic="Required All"/>
|
|
||||||
<Assembly Name="Semi.Avalonia.DataGrid" Dynamic="Required All"/>
|
|
||||||
<Assembly Name="Semi.Avalonia.ColorPicker" Dynamic="Required All"/>
|
|
||||||
<Assembly Name="Semi.Avalonia.Demo" Dynamic="Required All"/>
|
|
||||||
</Application>
|
|
||||||
</Directives>
|
|
||||||
16
demo/Semi.Avalonia.Demo.Web/AvaloniaAppBuilderExtensions.cs
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
using Avalonia;
|
||||||
|
using Avalonia.Media;
|
||||||
|
|
||||||
|
namespace Semi.Avalonia.Demo.Web;
|
||||||
|
|
||||||
|
public static class AvaloniaAppBuilderExtensions
|
||||||
|
{
|
||||||
|
private static string DefaultFontFamily => "avares://Semi.Avalonia.Demo.Web/Assets#Source Han Sans CN";
|
||||||
|
|
||||||
|
public static AppBuilder WithSourceHanSansCNFont(this AppBuilder builder) =>
|
||||||
|
builder.With(new FontManagerOptions
|
||||||
|
{
|
||||||
|
DefaultFamilyName = DefaultFontFamily,
|
||||||
|
FontFallbacks = new[] { new FontFallback { FontFamily = new FontFamily(DefaultFontFamily) } }
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -7,9 +7,10 @@ using Avalonia.Browser;
|
|||||||
|
|
||||||
namespace Semi.Avalonia.Demo.Web;
|
namespace Semi.Avalonia.Demo.Web;
|
||||||
|
|
||||||
internal partial class Program
|
internal sealed partial class Program
|
||||||
{
|
{
|
||||||
private static async Task Main(string[] args) => await BuildAvaloniaApp()
|
private static Task Main(string[] args) => BuildAvaloniaApp()
|
||||||
|
.WithSourceHanSansCNFont()
|
||||||
.StartBrowserAppAsync("out");
|
.StartBrowserAppAsync("out");
|
||||||
|
|
||||||
public static AppBuilder BuildAvaloniaApp()
|
public static AppBuilder BuildAvaloniaApp()
|
||||||
|
|||||||
@@ -1,20 +1,18 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk.WebAssembly">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>net7.0</TargetFramework>
|
|
||||||
<RuntimeIdentifier>browser-wasm</RuntimeIdentifier>
|
|
||||||
<WasmMainJSPath>AppBundle\main.js</WasmMainJSPath>
|
|
||||||
<OutputType>Exe</OutputType>
|
<OutputType>Exe</OutputType>
|
||||||
|
<TargetFramework>net8.0-browser</TargetFramework>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<WasmExtraFilesToDeploy Include="AppBundle\**" />
|
<AvaloniaResource Include="Assets\**"/>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Avalonia.Browser" Version="$(AvaloniaVersion)" />
|
<PackageReference Include="Avalonia.Browser" Version="$(AvaloniaVersion)"/>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\Semi.Avalonia.Demo\Semi.Avalonia.Demo.csproj" />
|
<ProjectReference Include="..\Semi.Avalonia.Demo\Semi.Avalonia.Demo.csproj"/>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 172 KiB After Width: | Height: | Size: 172 KiB |
@@ -7,8 +7,8 @@
|
|||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<base href="/" />
|
<base href="/" />
|
||||||
<link rel="modulepreload" href="./main.js" />
|
<link rel="modulepreload" href="./main.js" />
|
||||||
<link rel="modulepreload" href="./dotnet.js" />
|
<link rel="modulepreload" href="./_framework/dotnet.js" />
|
||||||
<link rel="modulepreload" href="./avalonia.js" />
|
<link rel="modulepreload" href="./_framework/avalonia.js" />
|
||||||
<link rel="stylesheet" href="./app.css" />
|
<link rel="stylesheet" href="./app.css" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
import { dotnet } from './dotnet.js'
|
import { dotnet } from './_framework/dotnet.js'
|
||||||
|
|
||||||
const is_browser = typeof window != "undefined";
|
const is_browser = typeof window != "undefined";
|
||||||
if (!is_browser) throw new Error(`Expected to be running in a browser`);
|
if (!is_browser) throw new Error(`Expected to be running in a browser`);
|
||||||
@@ -10,4 +10,4 @@ const dotnetRuntime = await dotnet
|
|||||||
|
|
||||||
const config = dotnetRuntime.getConfig();
|
const config = dotnetRuntime.getConfig();
|
||||||
|
|
||||||
await dotnetRuntime.runMainAndExit(config.mainAssemblyName, [window.location.search]);
|
await dotnetRuntime.runMain(config.mainAssemblyName, [window.location.search]);
|
||||||
@@ -4,10 +4,9 @@
|
|||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
xmlns:semi="https://irihi.tech/semi">
|
xmlns:semi="https://irihi.tech/semi">
|
||||||
<Application.Styles>
|
<Application.Styles>
|
||||||
<!-- You can still reference in old way.
|
<!-- You can still reference in old way. -->
|
||||||
<StyleInclude Source="avares://Semi.Avalonia/Themes/Index.axaml" />
|
<!-- <StyleInclude Source="avares://Semi.Avalonia/Themes/Index.axaml" /> -->
|
||||||
-->
|
<semi:SemiTheme Locale="zh-CN" />
|
||||||
<semi:SemiTheme Locale="zh-CN"/>
|
|
||||||
<StyleInclude Source="avares://Semi.Avalonia.DataGrid/Index.axaml" />
|
<StyleInclude Source="avares://Semi.Avalonia.DataGrid/Index.axaml" />
|
||||||
<StyleInclude Source="avares://Semi.Avalonia.ColorPicker/Index.axaml" />
|
<StyleInclude Source="avares://Semi.Avalonia.ColorPicker/Index.axaml" />
|
||||||
</Application.Styles>
|
</Application.Styles>
|
||||||
|
|||||||
@@ -45,7 +45,7 @@
|
|||||||
<DataGridTextColumn
|
<DataGridTextColumn
|
||||||
Width="*"
|
Width="*"
|
||||||
x:DataType="viewModels:ColorItemViewModel"
|
x:DataType="viewModels:ColorItemViewModel"
|
||||||
Binding="{ReflectionBinding ColorDisplayName}"
|
Binding="{Binding ColorDisplayName}"
|
||||||
CanUserSort="False"
|
CanUserSort="False"
|
||||||
Header="Name" />
|
Header="Name" />
|
||||||
<DataGridTemplateColumn Width="100" Header="Hex">
|
<DataGridTemplateColumn Width="100" Header="Hex">
|
||||||
@@ -99,7 +99,7 @@
|
|||||||
<DataGridTextColumn
|
<DataGridTextColumn
|
||||||
Width="*"
|
Width="*"
|
||||||
x:DataType="viewModels:ColorItemViewModel"
|
x:DataType="viewModels:ColorItemViewModel"
|
||||||
Binding="{ReflectionBinding ColorDisplayName}"
|
Binding="{Binding ColorDisplayName}"
|
||||||
CanUserSort="False"
|
CanUserSort="False"
|
||||||
Header="Name" />
|
Header="Name" />
|
||||||
<DataGridTemplateColumn Width="100" Header="Hex">
|
<DataGridTemplateColumn Width="100" Header="Hex">
|
||||||
|
|||||||
@@ -17,58 +17,72 @@
|
|||||||
<StackPanel.Styles>
|
<StackPanel.Styles>
|
||||||
<Style Selector="AutoCompleteBox">
|
<Style Selector="AutoCompleteBox">
|
||||||
<Setter Property="Width" Value="300" />
|
<Setter Property="Width" Value="300" />
|
||||||
|
<Setter Property="ItemsSource">
|
||||||
|
<Binding Path="States" />
|
||||||
|
</Setter>
|
||||||
|
<Setter Property="ItemTemplate">
|
||||||
|
<DataTemplate DataType="local:StateData">
|
||||||
|
<TextBlock Text="{Binding Name}" />
|
||||||
|
</DataTemplate>
|
||||||
|
</Setter>
|
||||||
</Style>
|
</Style>
|
||||||
</StackPanel.Styles>
|
</StackPanel.Styles>
|
||||||
|
|
||||||
<AutoCompleteBox
|
<AutoCompleteBox
|
||||||
ItemsSource="{Binding States}"
|
Watermark="Please select a State"
|
||||||
ValueMemberBinding="{Binding Name}"
|
ValueMemberBinding="{Binding Name}" />
|
||||||
Watermark="Please select a State">
|
|
||||||
<AutoCompleteBox.ItemTemplate>
|
|
||||||
<DataTemplate DataType="local:StateData">
|
|
||||||
<TextBlock Text="{Binding Name}" />
|
|
||||||
</DataTemplate>
|
|
||||||
</AutoCompleteBox.ItemTemplate>
|
|
||||||
</AutoCompleteBox>
|
|
||||||
<AutoCompleteBox
|
<AutoCompleteBox
|
||||||
Classes="Large"
|
Classes="Large"
|
||||||
ItemsSource="{Binding States}"
|
ValueMemberBinding="{ReflectionBinding Name}" />
|
||||||
ValueMemberBinding="{ReflectionBinding Name}">
|
|
||||||
<AutoCompleteBox.ItemTemplate>
|
|
||||||
<DataTemplate DataType="local:StateData">
|
|
||||||
<TextBlock Text="{Binding Name}" />
|
|
||||||
</DataTemplate>
|
|
||||||
</AutoCompleteBox.ItemTemplate>
|
|
||||||
</AutoCompleteBox>
|
|
||||||
<AutoCompleteBox
|
<AutoCompleteBox
|
||||||
Classes="Small"
|
Classes="Small"
|
||||||
ItemsSource="{Binding States}"
|
ValueMemberBinding="{ReflectionBinding Name}" />
|
||||||
ValueMemberBinding="{ReflectionBinding Name}">
|
|
||||||
<AutoCompleteBox.ItemTemplate>
|
|
||||||
<DataTemplate DataType="local:StateData">
|
|
||||||
<TextBlock Text="{Binding Name}" />
|
|
||||||
</DataTemplate>
|
|
||||||
</AutoCompleteBox.ItemTemplate>
|
|
||||||
</AutoCompleteBox>
|
|
||||||
<AutoCompleteBox
|
<AutoCompleteBox
|
||||||
Classes="Bordered"
|
Classes="Bordered"
|
||||||
ItemsSource="{Binding States}"
|
ValueMemberBinding="{ReflectionBinding Name}" />
|
||||||
ValueMemberBinding="{ReflectionBinding Name}">
|
|
||||||
<AutoCompleteBox.ItemTemplate>
|
|
||||||
<DataTemplate DataType="local:StateData">
|
|
||||||
<TextBlock Text="{Binding Name}" />
|
|
||||||
</DataTemplate>
|
|
||||||
</AutoCompleteBox.ItemTemplate>
|
|
||||||
</AutoCompleteBox>
|
|
||||||
<AutoCompleteBox
|
<AutoCompleteBox
|
||||||
IsEnabled="False"
|
IsEnabled="False"
|
||||||
ItemsSource="{Binding States}"
|
Watermark="Disabled"
|
||||||
ValueMemberBinding="{ReflectionBinding Name}"
|
ValueMemberBinding="{ReflectionBinding Name}" />
|
||||||
Watermark="Disabled">
|
<AutoCompleteBox
|
||||||
<AutoCompleteBox.ItemTemplate>
|
InnerLeftContent="https://"
|
||||||
<DataTemplate DataType="local:StateData">
|
InnerRightContent=".com"
|
||||||
<TextBlock Text="{Binding Name}" />
|
ValueMemberBinding="{ReflectionBinding Name}" />
|
||||||
</DataTemplate>
|
|
||||||
</AutoCompleteBox.ItemTemplate>
|
<StackPanel Orientation="Horizontal">
|
||||||
</AutoCompleteBox>
|
<AutoCompleteBox
|
||||||
|
Width="100"
|
||||||
|
Classes="Large"
|
||||||
|
Watermark="Large"
|
||||||
|
ValueMemberBinding="{ReflectionBinding Name}" />
|
||||||
|
<AutoCompleteBox
|
||||||
|
Width="100"
|
||||||
|
Watermark="Default"
|
||||||
|
ValueMemberBinding="{ReflectionBinding Name}" />
|
||||||
|
<AutoCompleteBox
|
||||||
|
Width="100"
|
||||||
|
Classes="Small"
|
||||||
|
Watermark="Small"
|
||||||
|
ValueMemberBinding="{ReflectionBinding Name}" />
|
||||||
|
</StackPanel>
|
||||||
|
|
||||||
|
<StackPanel Orientation="Horizontal">
|
||||||
|
<AutoCompleteBox
|
||||||
|
Width="100"
|
||||||
|
IsEnabled="False"
|
||||||
|
Watermark="Disabled"
|
||||||
|
ValueMemberBinding="{ReflectionBinding Name}" />
|
||||||
|
<AutoCompleteBox
|
||||||
|
Width="100"
|
||||||
|
Classes="Bordered"
|
||||||
|
Watermark="Bordered"
|
||||||
|
ValueMemberBinding="{ReflectionBinding Name}" />
|
||||||
|
<AutoCompleteBox
|
||||||
|
Width="100"
|
||||||
|
Classes="Bordered"
|
||||||
|
IsEnabled="False"
|
||||||
|
ValueMemberBinding="{ReflectionBinding Name}" />
|
||||||
|
</StackPanel>
|
||||||
|
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
</UserControl>
|
</UserControl>
|
||||||
@@ -4,114 +4,176 @@
|
|||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||||
d:DesignHeight="450"
|
|
||||||
d:DesignWidth="800"
|
|
||||||
mc:Ignorable="d">
|
mc:Ignorable="d">
|
||||||
<StackPanel HorizontalAlignment="Left" Spacing="20">
|
<ScrollViewer>
|
||||||
<TextBlock>Light (Default)</TextBlock>
|
<StackPanel HorizontalAlignment="Left" Spacing="20">
|
||||||
<StackPanel Orientation="Horizontal" Spacing="20">
|
<StackPanel.Styles>
|
||||||
<Button Classes="Primary">Primary</Button>
|
<Style Selector="SplitButton">
|
||||||
<Button Classes="Secondary">Secondary</Button>
|
<Setter Property="Flyout">
|
||||||
<Button Classes="Tertiary">Tertiary</Button>
|
<MenuFlyout Placement="BottomEdgeAlignedRight">
|
||||||
<Button Classes="Success">Success</Button>
|
<MenuItem Header="Submit All" />
|
||||||
<Button Classes="Warning">Warning</Button>
|
<MenuItem Header="Submit Updated" />
|
||||||
<Button Classes="Danger">Danger</Button>
|
</MenuFlyout>
|
||||||
<Button Classes="Primary" IsEnabled="False">Danger</Button>
|
</Setter>
|
||||||
|
</Style>
|
||||||
|
<Style Selector="DropDownButton">
|
||||||
|
<Setter Property="Flyout">
|
||||||
|
<MenuFlyout Placement="BottomEdgeAlignedRight">
|
||||||
|
<MenuItem Header="Submit All" />
|
||||||
|
<MenuItem Header="Submit Updated" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</Setter>
|
||||||
|
</Style>
|
||||||
|
<Style Selector="ToggleSplitButton">
|
||||||
|
<Setter Property="Flyout">
|
||||||
|
<MenuFlyout Placement="BottomEdgeAlignedRight">
|
||||||
|
<MenuItem Header="Submit All" />
|
||||||
|
<MenuItem Header="Submit Updated" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</Setter>
|
||||||
|
</Style>
|
||||||
|
</StackPanel.Styles>
|
||||||
|
|
||||||
|
<TextBlock>Light (Default)</TextBlock>
|
||||||
|
<StackPanel Orientation="Horizontal" Spacing="20">
|
||||||
|
<Button Classes="Primary">Primary</Button>
|
||||||
|
<Button Classes="Secondary">Secondary</Button>
|
||||||
|
<Button Classes="Tertiary">Tertiary</Button>
|
||||||
|
<Button Classes="Success">Success</Button>
|
||||||
|
<Button Classes="Warning">Warning</Button>
|
||||||
|
<Button Classes="Danger">Danger</Button>
|
||||||
|
<Button Classes="Danger" IsEnabled="False">Disabled</Button>
|
||||||
|
</StackPanel>
|
||||||
|
<TextBlock>Solid</TextBlock>
|
||||||
|
<StackPanel Orientation="Horizontal" Spacing="20">
|
||||||
|
<Button Classes="Primary" Theme="{DynamicResource SolidButton}">Primary</Button>
|
||||||
|
<Button Classes="Secondary" Theme="{DynamicResource SolidButton}">Secondary</Button>
|
||||||
|
<Button Classes="Tertiary" Theme="{DynamicResource SolidButton}">Tertiary</Button>
|
||||||
|
<Button Classes="Success" Theme="{DynamicResource SolidButton}">Success</Button>
|
||||||
|
<Button Classes="Warning" Theme="{DynamicResource SolidButton}">Warning</Button>
|
||||||
|
<Button Classes="Danger" Theme="{DynamicResource SolidButton}">Danger</Button>
|
||||||
|
<Button
|
||||||
|
Classes="Danger"
|
||||||
|
IsEnabled="False"
|
||||||
|
Theme="{DynamicResource SolidButton}">
|
||||||
|
Disabled
|
||||||
|
</Button>
|
||||||
|
</StackPanel>
|
||||||
|
<TextBlock>Outline</TextBlock>
|
||||||
|
<StackPanel Orientation="Horizontal" Spacing="20">
|
||||||
|
<Button Classes="Primary" Theme="{DynamicResource OutlineButton}">Primary</Button>
|
||||||
|
<Button Classes="Secondary" Theme="{DynamicResource OutlineButton}">Secondary</Button>
|
||||||
|
<Button Classes="Tertiary" Theme="{DynamicResource OutlineButton}">Tertiary</Button>
|
||||||
|
<Button Classes="Success" Theme="{DynamicResource OutlineButton}">Success</Button>
|
||||||
|
<Button Classes="Warning" Theme="{DynamicResource OutlineButton}">Warning</Button>
|
||||||
|
<Button Classes="Danger" Theme="{DynamicResource OutlineButton}">Danger</Button>
|
||||||
|
<Button Classes="Danger" Theme="{DynamicResource OutlineButton}" IsEnabled="False">Disabled</Button>
|
||||||
|
</StackPanel>
|
||||||
|
<TextBlock>Borderless</TextBlock>
|
||||||
|
<StackPanel Orientation="Horizontal" Spacing="20">
|
||||||
|
<Button Classes="Primary" Theme="{DynamicResource BorderlessButton}">Primary</Button>
|
||||||
|
<Button Classes="Secondary" Theme="{DynamicResource BorderlessButton}">Secondary</Button>
|
||||||
|
<Button Classes="Tertiary" Theme="{DynamicResource BorderlessButton}">Tertiary</Button>
|
||||||
|
<Button Classes="Success" Theme="{DynamicResource BorderlessButton}">Success</Button>
|
||||||
|
<Button Classes="Warning" Theme="{DynamicResource BorderlessButton}">Warning</Button>
|
||||||
|
<Button Classes="Danger" Theme="{DynamicResource BorderlessButton}">Danger</Button>
|
||||||
|
<Button
|
||||||
|
Classes="Danger"
|
||||||
|
IsEnabled="False"
|
||||||
|
Theme="{DynamicResource BorderlessButton}">
|
||||||
|
Disabled
|
||||||
|
</Button>
|
||||||
|
</StackPanel>
|
||||||
|
<TextBlock>Disabled</TextBlock>
|
||||||
|
<StackPanel Background="{DynamicResource SemiColorBackground1}" Orientation="Horizontal" Spacing="20">
|
||||||
|
<Button IsEnabled="False">Light</Button>
|
||||||
|
<Button IsEnabled="False" Theme="{DynamicResource SolidButton}">Solid</Button>
|
||||||
|
<Button IsEnabled="False" Theme="{DynamicResource OutlineButton}">Outline</Button>
|
||||||
|
<Button IsEnabled="False" Theme="{DynamicResource BorderlessButton}">Borderless</Button>
|
||||||
|
</StackPanel>
|
||||||
|
<TextBlock>Size Classes</TextBlock>
|
||||||
|
<StackPanel Orientation="Horizontal" Spacing="20">
|
||||||
|
<Button Classes="Primary Small">Small</Button>
|
||||||
|
<Button Classes="Primary">Default</Button>
|
||||||
|
<Button Classes="Primary Large">Large</Button>
|
||||||
|
</StackPanel>
|
||||||
|
|
||||||
|
<TextBlock>DropDownButton</TextBlock>
|
||||||
|
<StackPanel Orientation="Horizontal" Spacing="8">
|
||||||
|
<DropDownButton Content="Primary" />
|
||||||
|
<DropDownButton Classes="Secondary" Content="Secondary" />
|
||||||
|
<DropDownButton Classes="Tertiary" Content="Tertiary" />
|
||||||
|
<DropDownButton Classes="Success" Content="Success" />
|
||||||
|
<DropDownButton Classes="Warning" Content="Warning" />
|
||||||
|
<DropDownButton Classes="Danger" Content="Danger" />
|
||||||
|
<DropDownButton
|
||||||
|
Classes="Danger"
|
||||||
|
Content="Disabled"
|
||||||
|
IsEnabled="False" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel Orientation="Horizontal" Spacing="8">
|
||||||
|
<DropDownButton Content="Default" Classes="Success"/>
|
||||||
|
<DropDownButton Content="Solid" Theme="{DynamicResource SolidDropDownButton}" Classes="Success"/>
|
||||||
|
<DropDownButton Content="Outline" Theme="{DynamicResource OutlineDropDownButton}" Classes="Success"/>
|
||||||
|
<DropDownButton Content="Borderless" Theme="{DynamicResource BorderlessDropDownButton}" Classes="Success"/>
|
||||||
|
<DropDownButton Content="Default" Classes="Success" IsEnabled="False"/>
|
||||||
|
<DropDownButton Content="Solid" Theme="{DynamicResource SolidDropDownButton}" Classes="Success" IsEnabled="False"/>
|
||||||
|
<DropDownButton Content="Outline" Theme="{DynamicResource OutlineDropDownButton}" Classes="Success" IsEnabled="False"/>
|
||||||
|
<DropDownButton Content="Borderless" Theme="{DynamicResource BorderlessDropDownButton}" Classes="Success" IsEnabled="False"/>
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel Orientation="Horizontal" Spacing="8">
|
||||||
|
<DropDownButton Classes="Small" Content="Small" />
|
||||||
|
<DropDownButton Content="Default" />
|
||||||
|
<DropDownButton Classes="Large" Content="Large" />
|
||||||
|
</StackPanel>
|
||||||
|
|
||||||
|
<TextBlock>SplitButton</TextBlock>
|
||||||
|
<StackPanel Orientation="Horizontal" Spacing="8">
|
||||||
|
<SplitButton Content="Primary" />
|
||||||
|
<SplitButton Classes="Secondary" Content="Secondary" />
|
||||||
|
<SplitButton Classes="Tertiary" Content="Tertiary" />
|
||||||
|
<SplitButton Classes="Success" Content="Success" />
|
||||||
|
<SplitButton Classes="Warning" Content="Warning" />
|
||||||
|
<SplitButton Classes="Danger" Content="Danger" />
|
||||||
|
<SplitButton Classes="Danger" Content="Disabled" IsEnabled="False" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel Orientation="Horizontal" Spacing="8">
|
||||||
|
<SplitButton Content="Default" Classes="Success" />
|
||||||
|
<SplitButton Content="Solid" Theme="{DynamicResource SolidSplitButton}" Classes="Success" />
|
||||||
|
<SplitButton Content="Outline" Theme="{DynamicResource OutlineSplitButton}" Classes="Success" />
|
||||||
|
<SplitButton Content="Borderless" Theme="{DynamicResource BorderlessSplitButton}" Classes="Success" />
|
||||||
|
<SplitButton Content="Default" Classes="Success" IsEnabled="False" />
|
||||||
|
<SplitButton Content="Solid" Theme="{DynamicResource SolidSplitButton}" Classes="Success" IsEnabled="False" />
|
||||||
|
<SplitButton Content="Outline" Theme="{DynamicResource OutlineSplitButton}" Classes="Success" IsEnabled="False" />
|
||||||
|
<SplitButton Content="Borderless" Theme="{DynamicResource BorderlessSplitButton}" Classes="Success" IsEnabled="False" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel Orientation="Horizontal" Spacing="8">
|
||||||
|
<SplitButton Classes="Small" Content="Small" />
|
||||||
|
<SplitButton Content="Default" />
|
||||||
|
<SplitButton Classes="Large" Content="Large" />
|
||||||
|
</StackPanel>
|
||||||
|
|
||||||
|
<TextBlock>ToggleSplitButton</TextBlock>
|
||||||
|
<StackPanel Orientation="Horizontal" Spacing="8">
|
||||||
|
<ToggleSplitButton Content="Primary" />
|
||||||
|
<ToggleSplitButton Classes="Secondary" Content="Secondary" />
|
||||||
|
<ToggleSplitButton Classes="Tertiary" Content="Tertiary" />
|
||||||
|
<ToggleSplitButton Classes="Success" Content="Success" />
|
||||||
|
<ToggleSplitButton Classes="Warning" Content="Warning" />
|
||||||
|
<ToggleSplitButton Classes="Danger" Content="Danger" />
|
||||||
|
<ToggleSplitButton Classes="Danger" Content="Disabled" IsEnabled="False" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel Orientation="Horizontal" Spacing="8">
|
||||||
|
<ToggleSplitButton Content="Default" Classes="Success" />
|
||||||
|
<ToggleSplitButton Content="Checked" Classes="Success" IsChecked="True" />
|
||||||
|
<ToggleSplitButton Content="Default" Classes="Success" IsEnabled="False" />
|
||||||
|
<ToggleSplitButton Content="Checked" Classes="Success" IsChecked="True" IsEnabled="False" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel Orientation="Horizontal" Spacing="8">
|
||||||
|
<ToggleSplitButton Classes="Small" Content="Small" />
|
||||||
|
<ToggleSplitButton Content="Default" />
|
||||||
|
<ToggleSplitButton Classes="Large" Content="Large" />
|
||||||
|
</StackPanel>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
<TextBlock>Solid</TextBlock>
|
</ScrollViewer>
|
||||||
<StackPanel Orientation="Horizontal" Spacing="20">
|
|
||||||
<Button Classes="Primary" Theme="{DynamicResource SolidButton}">Primary</Button>
|
|
||||||
<Button Classes="Secondary" Theme="{DynamicResource SolidButton}">Secondary</Button>
|
|
||||||
<Button Classes="Tertiary" Theme="{DynamicResource SolidButton}">Tertiary</Button>
|
|
||||||
<Button Classes="Success" Theme="{DynamicResource SolidButton}">Success</Button>
|
|
||||||
<Button Classes="Warning" Theme="{DynamicResource SolidButton}">Warning</Button>
|
|
||||||
<Button Classes="Danger" Theme="{DynamicResource SolidButton}">Danger</Button>
|
|
||||||
<Button
|
|
||||||
Classes="Primary"
|
|
||||||
IsEnabled="False"
|
|
||||||
Theme="{DynamicResource SolidButton}">
|
|
||||||
Danger
|
|
||||||
</Button>
|
|
||||||
</StackPanel>
|
|
||||||
<TextBlock>Borderless</TextBlock>
|
|
||||||
<StackPanel Orientation="Horizontal" Spacing="20">
|
|
||||||
<Button Classes="Primary" Theme="{DynamicResource BorderlessButton}">Primary</Button>
|
|
||||||
<Button Classes="Secondary" Theme="{DynamicResource BorderlessButton}">Secondary</Button>
|
|
||||||
<Button Classes="Tertiary" Theme="{DynamicResource BorderlessButton}">Tertiary</Button>
|
|
||||||
<Button Classes="Success" Theme="{DynamicResource BorderlessButton}">Success</Button>
|
|
||||||
<Button Classes="Warning" Theme="{DynamicResource BorderlessButton}">Warning</Button>
|
|
||||||
<Button Classes="Danger" Theme="{DynamicResource BorderlessButton}">Danger</Button>
|
|
||||||
<Button
|
|
||||||
Classes="Primary"
|
|
||||||
IsEnabled="False"
|
|
||||||
Theme="{DynamicResource BorderlessButton}">
|
|
||||||
Danger
|
|
||||||
</Button>
|
|
||||||
</StackPanel>
|
|
||||||
<TextBlock>DropDownButton</TextBlock>
|
|
||||||
<StackPanel Orientation="Horizontal" Spacing="8">
|
|
||||||
<DropDownButton Content="Submit">
|
|
||||||
<DropDownButton.Flyout>
|
|
||||||
<MenuFlyout Placement="BottomEdgeAlignedRight">
|
|
||||||
<MenuItem Header="Submit All" />
|
|
||||||
<MenuItem Header="Submit Updated" />
|
|
||||||
</MenuFlyout>
|
|
||||||
</DropDownButton.Flyout>
|
|
||||||
</DropDownButton>
|
|
||||||
<DropDownButton Content="Submit" Theme="{DynamicResource SolidDropDownButton}">
|
|
||||||
<DropDownButton.Flyout>
|
|
||||||
<MenuFlyout Placement="BottomEdgeAlignedRight">
|
|
||||||
<MenuItem Header="Submit All" />
|
|
||||||
<MenuItem Header="Submit Updated" />
|
|
||||||
</MenuFlyout>
|
|
||||||
</DropDownButton.Flyout>
|
|
||||||
</DropDownButton>
|
|
||||||
<DropDownButton Content="Submit" Theme="{DynamicResource BorderlessDropDownButton}">
|
|
||||||
<DropDownButton.Flyout>
|
|
||||||
<MenuFlyout Placement="BottomEdgeAlignedRight">
|
|
||||||
<MenuItem Header="Submit All" />
|
|
||||||
<MenuItem Header="Submit Updated" />
|
|
||||||
</MenuFlyout>
|
|
||||||
</DropDownButton.Flyout>
|
|
||||||
</DropDownButton>
|
|
||||||
</StackPanel>
|
|
||||||
<StackPanel Orientation="Horizontal" Spacing="8">
|
|
||||||
<SplitButton Content="Submit">
|
|
||||||
<SplitButton.Flyout>
|
|
||||||
<MenuFlyout Placement="BottomEdgeAlignedRight">
|
|
||||||
<MenuItem Header="Submit All" />
|
|
||||||
<MenuItem Header="Submit Updated" />
|
|
||||||
</MenuFlyout>
|
|
||||||
</SplitButton.Flyout>
|
|
||||||
</SplitButton>
|
|
||||||
<SplitButton Classes="Secondary" Content="Submit" />
|
|
||||||
<SplitButton Classes="Tertiary" Content="Submit" />
|
|
||||||
<SplitButton Classes="Success" Content="Submit" />
|
|
||||||
<SplitButton Classes="Warning" Content="Submit" />
|
|
||||||
<SplitButton Classes="Danger" Content="Submit" />
|
|
||||||
<SplitButton
|
|
||||||
Classes="Danger"
|
|
||||||
Content="Submit"
|
|
||||||
IsEnabled="False" />
|
|
||||||
</StackPanel>
|
|
||||||
<StackPanel Orientation="Horizontal" Spacing="8">
|
|
||||||
<ToggleSplitButton Content="Submit">
|
|
||||||
<ToggleSplitButton.Flyout>
|
|
||||||
<MenuFlyout Placement="BottomEdgeAlignedRight">
|
|
||||||
<MenuItem Header="Submit All" />
|
|
||||||
<MenuItem Header="Submit Updated" />
|
|
||||||
</MenuFlyout>
|
|
||||||
</ToggleSplitButton.Flyout>
|
|
||||||
</ToggleSplitButton>
|
|
||||||
<ToggleSplitButton Classes="Secondary" Content="Submit" />
|
|
||||||
<ToggleSplitButton Classes="Tertiary" Content="Submit" />
|
|
||||||
<ToggleSplitButton Classes="Success" Content="Submit" />
|
|
||||||
<ToggleSplitButton Classes="Warning" Content="Submit" />
|
|
||||||
<ToggleSplitButton Classes="Danger" Content="Submit" />
|
|
||||||
<ToggleSplitButton
|
|
||||||
Classes="Danger"
|
|
||||||
Content="Submit"
|
|
||||||
IsEnabled="False" />
|
|
||||||
</StackPanel>
|
|
||||||
</StackPanel>
|
|
||||||
</UserControl>
|
</UserControl>
|
||||||
@@ -8,11 +8,22 @@
|
|||||||
d:DesignWidth="800"
|
d:DesignWidth="800"
|
||||||
mc:Ignorable="d">
|
mc:Ignorable="d">
|
||||||
<StackPanel HorizontalAlignment="Left" Spacing="20">
|
<StackPanel HorizontalAlignment="Left" Spacing="20">
|
||||||
<CalendarDatePicker />
|
<StackPanel Orientation="Horizontal">
|
||||||
<CalendarDatePicker Classes="ClearButton" Width="200" />
|
<CalendarDatePicker Classes="Large" />
|
||||||
|
<CalendarDatePicker />
|
||||||
|
<CalendarDatePicker Classes="Small" />
|
||||||
|
</StackPanel>
|
||||||
|
|
||||||
|
<StackPanel Orientation="Horizontal">
|
||||||
|
<CalendarDatePicker IsEnabled="False" />
|
||||||
|
<CalendarDatePicker Classes="Bordered" />
|
||||||
|
<CalendarDatePicker Classes="Bordered" IsEnabled="False" />
|
||||||
|
</StackPanel>
|
||||||
|
|
||||||
<CalendarDatePicker Width="500" />
|
<CalendarDatePicker Width="500" />
|
||||||
<CalendarDatePicker Classes="Large" />
|
|
||||||
<CalendarDatePicker Classes="Small" />
|
<CalendarDatePicker Classes="ClearButton" Width="200" />
|
||||||
|
|
||||||
<CalendarDatePicker
|
<CalendarDatePicker
|
||||||
Name="DatePicker2"
|
Name="DatePicker2"
|
||||||
Margin="0,0,0,8"
|
Margin="0,0,0,8"
|
||||||
@@ -23,9 +34,5 @@
|
|||||||
CustomDateFormatString="ddd, MMM d"
|
CustomDateFormatString="ddd, MMM d"
|
||||||
SelectedDateFormat="Custom" />
|
SelectedDateFormat="Custom" />
|
||||||
<CalendarDatePicker Margin="0,0,0,8" Watermark="Watermark" />
|
<CalendarDatePicker Margin="0,0,0,8" Watermark="Watermark" />
|
||||||
|
|
||||||
<CalendarDatePicker IsEnabled="False" />
|
|
||||||
<CalendarDatePicker Classes="Bordered" />
|
|
||||||
<CalendarDatePicker Classes="Bordered" IsEnabled="False" />
|
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
</UserControl>
|
</UserControl>
|
||||||
@@ -29,6 +29,12 @@
|
|||||||
<colorPicker:SemiColorLightPalette />
|
<colorPicker:SemiColorLightPalette />
|
||||||
</ColorPicker.Palette>
|
</ColorPicker.Palette>
|
||||||
</ColorPicker>
|
</ColorPicker>
|
||||||
|
|
||||||
|
<ColorPicker ColorSpectrumShape="Box" Theme="{DynamicResource HexColorPicker}">
|
||||||
|
<ColorPicker.Palette>
|
||||||
|
<colorPicker:SemiColorLightPalette />
|
||||||
|
</ColorPicker.Palette>
|
||||||
|
</ColorPicker>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
</UserControl>
|
</UserControl>
|
||||||
|
|||||||
@@ -4,71 +4,40 @@
|
|||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||||
d:DesignHeight="450"
|
xmlns:pages="clr-namespace:Semi.Avalonia.Demo.Pages"
|
||||||
|
d:DesignHeight="800"
|
||||||
d:DesignWidth="800"
|
d:DesignWidth="800"
|
||||||
mc:Ignorable="d">
|
mc:Ignorable="d">
|
||||||
|
<Design.DataContext>
|
||||||
|
<pages:ComboBoxDemoViewModel />
|
||||||
|
</Design.DataContext>
|
||||||
<StackPanel Spacing="20">
|
<StackPanel Spacing="20">
|
||||||
<ComboBox Width="150">
|
<StackPanel.Styles>
|
||||||
<ComboBoxItem>Ding</ComboBoxItem>
|
<Style Selector="ComboBox">
|
||||||
<ComboBoxItem>Otter</ComboBoxItem>
|
<Setter Property="Width" Value="300" />
|
||||||
<ComboBoxItem>Husky</ComboBoxItem>
|
<Setter Property="ItemsSource" Value="{Binding Items}" />
|
||||||
<ComboBoxItem>Mr. 17</ComboBoxItem>
|
</Style>
|
||||||
<ComboBoxItem>Cass</ComboBoxItem>
|
</StackPanel.Styles>
|
||||||
</ComboBox>
|
|
||||||
<ComboBox Width="150" Classes="ClearButton">
|
<ComboBox />
|
||||||
<ComboBoxItem>Ding</ComboBoxItem>
|
<ComboBox Classes="ClearButton" />
|
||||||
<ComboBoxItem>Otter</ComboBoxItem>
|
<ComboBox PlaceholderText="Please Select" />
|
||||||
<ComboBoxItem>Husky</ComboBoxItem>
|
<ComboBox IsEnabled="False" />
|
||||||
<ComboBoxItem>Mr. 17</ComboBoxItem>
|
<ComboBox Classes="Large" IsEnabled="False" />
|
||||||
<ComboBoxItem>Cass</ComboBoxItem>
|
<ComboBox Classes="Small" />
|
||||||
</ComboBox>
|
<ComboBox Classes="Bordered" />
|
||||||
<ComboBox Width="150" PlaceholderText="Please Select">
|
<ComboBox Classes="Bordered" IsEnabled="False" />
|
||||||
<ComboBoxItem>Ding</ComboBoxItem>
|
|
||||||
<ComboBoxItem>Otter</ComboBoxItem>
|
<StackPanel Orientation="Horizontal">
|
||||||
<ComboBoxItem>Husky</ComboBoxItem>
|
<ComboBox Width="100" Classes="Large" PlaceholderText="Large" />
|
||||||
<ComboBoxItem>Mr. 17</ComboBoxItem>
|
<ComboBox Width="100" PlaceholderText="Default" />
|
||||||
<ComboBoxItem>Cass</ComboBoxItem>
|
<ComboBox Width="100" Classes="Small" PlaceholderText="Small" />
|
||||||
</ComboBox>
|
</StackPanel>
|
||||||
<ComboBox Width="150" IsEnabled="False">
|
|
||||||
<ComboBoxItem>Ding</ComboBoxItem>
|
<StackPanel Orientation="Horizontal">
|
||||||
<ComboBoxItem>Otter</ComboBoxItem>
|
<ComboBox Width="100" IsEnabled="False" PlaceholderText="Disabled" />
|
||||||
<ComboBoxItem>Husky</ComboBoxItem>
|
<ComboBox Width="100" Classes="Bordered" PlaceholderText="Bordered" />
|
||||||
<ComboBoxItem>Mr. 17</ComboBoxItem>
|
<ComboBox Width="100" Classes="Bordered" IsEnabled="False" />
|
||||||
<ComboBoxItem>Cass</ComboBoxItem>
|
</StackPanel>
|
||||||
</ComboBox>
|
|
||||||
<ComboBox
|
|
||||||
Width="150"
|
|
||||||
Classes="Large"
|
|
||||||
IsEnabled="False">
|
|
||||||
<ComboBoxItem>Ding</ComboBoxItem>
|
|
||||||
<ComboBoxItem>Otter</ComboBoxItem>
|
|
||||||
<ComboBoxItem>Husky</ComboBoxItem>
|
|
||||||
<ComboBoxItem>Mr. 17</ComboBoxItem>
|
|
||||||
<ComboBoxItem>Cass</ComboBoxItem>
|
|
||||||
</ComboBox>
|
|
||||||
<ComboBox Width="150" Classes="Small">
|
|
||||||
<ComboBoxItem>Ding</ComboBoxItem>
|
|
||||||
<ComboBoxItem>Otter</ComboBoxItem>
|
|
||||||
<ComboBoxItem>Husky</ComboBoxItem>
|
|
||||||
<ComboBoxItem>Mr. 17</ComboBoxItem>
|
|
||||||
<ComboBoxItem>Cass</ComboBoxItem>
|
|
||||||
</ComboBox>
|
|
||||||
<ComboBox Width="150" Classes="Bordered">
|
|
||||||
<ComboBoxItem>Ding</ComboBoxItem>
|
|
||||||
<ComboBoxItem>Otter</ComboBoxItem>
|
|
||||||
<ComboBoxItem>Husky</ComboBoxItem>
|
|
||||||
<ComboBoxItem>Mr. 17</ComboBoxItem>
|
|
||||||
<ComboBoxItem>Cass</ComboBoxItem>
|
|
||||||
</ComboBox>
|
|
||||||
<ComboBox
|
|
||||||
Width="150"
|
|
||||||
Classes="Bordered"
|
|
||||||
IsEnabled="False">
|
|
||||||
<ComboBoxItem>Ding</ComboBoxItem>
|
|
||||||
<ComboBoxItem>Otter</ComboBoxItem>
|
|
||||||
<ComboBoxItem>Husky</ComboBoxItem>
|
|
||||||
<ComboBoxItem>Mr. 17</ComboBoxItem>
|
|
||||||
<ComboBoxItem>Cass</ComboBoxItem>
|
|
||||||
</ComboBox>
|
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
</UserControl>
|
</UserControl>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
using Avalonia;
|
using System.Collections.ObjectModel;
|
||||||
using Avalonia.Controls;
|
using Avalonia.Controls;
|
||||||
using Avalonia.Markup.Xaml;
|
using CommunityToolkit.Mvvm.ComponentModel;
|
||||||
|
|
||||||
namespace Semi.Avalonia.Demo.Pages;
|
namespace Semi.Avalonia.Demo.Pages;
|
||||||
|
|
||||||
@@ -9,5 +9,11 @@ public partial class ComboBoxDemo : UserControl
|
|||||||
public ComboBoxDemo()
|
public ComboBoxDemo()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
this.DataContext = new ComboBoxDemoViewModel();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public class ComboBoxDemoViewModel : ObservableObject
|
||||||
|
{
|
||||||
|
public ObservableCollection<string> Items { get; set; } = ["Ding", "Otter", "Husky", "Mr.17", "Cass"];
|
||||||
|
}
|
||||||
@@ -14,5 +14,16 @@
|
|||||||
<DatePicker IsEnabled="False" />
|
<DatePicker IsEnabled="False" />
|
||||||
<DatePicker Classes="Large" />
|
<DatePicker Classes="Large" />
|
||||||
<DatePicker Classes="Small" />
|
<DatePicker Classes="Small" />
|
||||||
|
<StackPanel Orientation="Horizontal">
|
||||||
|
<DatePicker Classes="Large" />
|
||||||
|
<DatePicker />
|
||||||
|
<DatePicker Classes="Small" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel Orientation="Horizontal">
|
||||||
|
<DatePicker IsEnabled="False" />
|
||||||
|
<DatePicker Classes="Bordered" />
|
||||||
|
<DatePicker Classes="Bordered" IsEnabled="False" />
|
||||||
|
</StackPanel>
|
||||||
|
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
</UserControl>
|
</UserControl>
|
||||||
|
|||||||
@@ -10,6 +10,7 @@
|
|||||||
<UserControl.Styles>
|
<UserControl.Styles>
|
||||||
<Style Selector="Button">
|
<Style Selector="Button">
|
||||||
<Setter Property="Margin" Value="8" />
|
<Setter Property="Margin" Value="8" />
|
||||||
|
<Setter Property="HorizontalAlignment" Value="Stretch" />
|
||||||
</Style>
|
</Style>
|
||||||
</UserControl.Styles>
|
</UserControl.Styles>
|
||||||
<Grid
|
<Grid
|
||||||
|
|||||||
43
demo/Semi.Avalonia.Demo/Pages/HyperlinkButtonDemo.axaml
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
<UserControl
|
||||||
|
d:DesignHeight="450"
|
||||||
|
d:DesignWidth="800"
|
||||||
|
mc:Ignorable="d"
|
||||||
|
x:Class="Semi.Avalonia.Demo.Pages.HyperlinkButtonDemo"
|
||||||
|
xmlns="https://github.com/avaloniaui"
|
||||||
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||||
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||||
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
||||||
|
<StackPanel HorizontalAlignment="Left" Spacing="20">
|
||||||
|
<StackPanel Orientation="Horizontal">
|
||||||
|
<HyperlinkButton Height="20" NavigateUri="http://www.irihi.tech/">
|
||||||
|
<TextBlock
|
||||||
|
HorizontalAlignment="Center"
|
||||||
|
Text="iRihi Homepage"
|
||||||
|
TextDecorations="Underline"
|
||||||
|
VerticalAlignment="Center" />
|
||||||
|
</HyperlinkButton>
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel Orientation="Horizontal">
|
||||||
|
<HyperlinkButton Height="20" IsEnabled="False">
|
||||||
|
<TextBlock
|
||||||
|
HorizontalAlignment="Center"
|
||||||
|
Text="Not Enabled"
|
||||||
|
TextDecorations="Underline"
|
||||||
|
VerticalAlignment="Center" />
|
||||||
|
</HyperlinkButton>
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel Orientation="Horizontal">
|
||||||
|
<HyperlinkButton
|
||||||
|
BorderThickness="1"
|
||||||
|
Classes="WithIcon"
|
||||||
|
Height="20"
|
||||||
|
NavigateUri="http://www.irihi.tech/">
|
||||||
|
<TextBlock
|
||||||
|
HorizontalAlignment="Center"
|
||||||
|
Text="Link with Icon"
|
||||||
|
TextDecorations="Underline"
|
||||||
|
VerticalAlignment="Center" />
|
||||||
|
</HyperlinkButton>
|
||||||
|
</StackPanel>
|
||||||
|
</StackPanel>
|
||||||
|
</UserControl>
|
||||||
14
demo/Semi.Avalonia.Demo/Pages/HyperlinkButtonDemo.axaml.cs
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
using System;
|
||||||
|
using Avalonia;
|
||||||
|
using Avalonia.Controls;
|
||||||
|
using Avalonia.Markup.Xaml;
|
||||||
|
|
||||||
|
namespace Semi.Avalonia.Demo.Pages;
|
||||||
|
|
||||||
|
public partial class HyperlinkButtonDemo : UserControl
|
||||||
|
{
|
||||||
|
public HyperlinkButtonDemo()
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -78,8 +78,8 @@
|
|||||||
<StackPanel Orientation="Horizontal">
|
<StackPanel Orientation="Horizontal">
|
||||||
<Border HorizontalAlignment="Left" Theme="{StaticResource RadioButtonGroupBorder}">
|
<Border HorizontalAlignment="Left" Theme="{StaticResource RadioButtonGroupBorder}">
|
||||||
<ListBox Theme="{DynamicResource ButtonRadioGroupListBox}">
|
<ListBox Theme="{DynamicResource ButtonRadioGroupListBox}">
|
||||||
<ListBoxItem Classes="Large" IsSelected="True">Small 1</ListBoxItem>
|
<ListBoxItem Classes="Large" IsSelected="True">Large 1</ListBoxItem>
|
||||||
<ListBoxItem Classes="Large">Small 2</ListBoxItem>
|
<ListBoxItem Classes="Large">Large 2</ListBoxItem>
|
||||||
</ListBox>
|
</ListBox>
|
||||||
</Border>
|
</Border>
|
||||||
<Border
|
<Border
|
||||||
@@ -87,8 +87,8 @@
|
|||||||
HorizontalAlignment="Left"
|
HorizontalAlignment="Left"
|
||||||
Theme="{StaticResource RadioButtonGroupBorder}">
|
Theme="{StaticResource RadioButtonGroupBorder}">
|
||||||
<ListBox Theme="{DynamicResource ButtonRadioGroupListBox}" IsEnabled="False">
|
<ListBox Theme="{DynamicResource ButtonRadioGroupListBox}" IsEnabled="False">
|
||||||
<ListBoxItem Classes="Large" IsSelected="True">Small 1</ListBoxItem>
|
<ListBoxItem Classes="Large" IsSelected="True">Large 1</ListBoxItem>
|
||||||
<ListBoxItem Classes="Large">Small 2</ListBoxItem>
|
<ListBoxItem Classes="Large">Large 2</ListBoxItem>
|
||||||
</ListBox>
|
</ListBox>
|
||||||
</Border>
|
</Border>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
|
|||||||
@@ -8,6 +8,11 @@
|
|||||||
d:DesignWidth="800"
|
d:DesignWidth="800"
|
||||||
mc:Ignorable="d">
|
mc:Ignorable="d">
|
||||||
<StackPanel HorizontalAlignment="Left" Spacing="10">
|
<StackPanel HorizontalAlignment="Left" Spacing="10">
|
||||||
|
<StackPanel.Styles>
|
||||||
|
<Style Selector="Button">
|
||||||
|
<Setter Property="HorizontalAlignment" Value="Stretch" />
|
||||||
|
</Style>
|
||||||
|
</StackPanel.Styles>
|
||||||
<Button Name="openFileDialog">Open File</Button>
|
<Button Name="openFileDialog">Open File</Button>
|
||||||
<Button Name="selectFolderDialog">Select Folder</Button>
|
<Button Name="selectFolderDialog">Select Folder</Button>
|
||||||
<Button Name="saveFileDialog">Save File</Button>
|
<Button Name="saveFileDialog">Save File</Button>
|
||||||
|
|||||||
@@ -25,14 +25,30 @@
|
|||||||
<MenuItem Header="Submenu Level 2" />
|
<MenuItem Header="Submenu Level 2" />
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
<MenuItem Header="Menu Item with _Checkbox">
|
<MenuItem Header="Menu Item with _Icon">
|
||||||
<MenuItem.Icon>
|
<MenuItem.Icon>
|
||||||
<TextBlock>😊</TextBlock>
|
<TextBlock>😊</TextBlock>
|
||||||
</MenuItem.Icon>
|
</MenuItem.Icon>
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
|
<MenuItem Header="Menu Item with _Checkbox" ToggleType="CheckBox" />
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
<MenuItem Header="_Second">
|
<MenuItem Header="_Second">
|
||||||
<MenuItem Header="Second _Menu Item" />
|
<MenuItem Header="Second _Menu Item" />
|
||||||
|
<MenuItem IsChecked="True" Header="Second Menu toggle item" ToggleType="CheckBox" />
|
||||||
|
<Separator />
|
||||||
|
<MenuItem GroupName="A" Header="Radio 1 - group" ToggleType="Radio" />
|
||||||
|
<MenuItem IsChecked="True" GroupName="A" Header="Radio 2 - group" ToggleType="Radio" />
|
||||||
|
<MenuItem GroupName="A" Header="Radio 3 - group" ToggleType="Radio">
|
||||||
|
<MenuItem Header="Radio 4 - group" ToggleType="Radio" GroupName="A" />
|
||||||
|
<MenuItem Header="Radio 5 - group" ToggleType="Radio" GroupName="A" />
|
||||||
|
</MenuItem>
|
||||||
|
<Separator />
|
||||||
|
<MenuItem Header="Radio 1" ToggleType="Radio" />
|
||||||
|
<MenuItem IsChecked="True" Header="Radio 2" ToggleType="Radio" />
|
||||||
|
<MenuItem Header="Radio 3" ToggleType="Radio">
|
||||||
|
<MenuItem Header="Radio 4" ToggleType="Radio" />
|
||||||
|
<MenuItem Header="Radio 5" ToggleType="Radio" />
|
||||||
|
</MenuItem>
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
<MenuItem Header="Parent">
|
<MenuItem Header="Parent">
|
||||||
<MenuItem Header="Child 1" />
|
<MenuItem Header="Child 1" />
|
||||||
@@ -86,7 +102,7 @@
|
|||||||
<MenuItem Header="Submenu _1" />
|
<MenuItem Header="Submenu _1" />
|
||||||
<MenuItem Header="Submenu _2" />
|
<MenuItem Header="Submenu _2" />
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
<MenuItem Header="Menu Item with _Checkbox">
|
<MenuItem Header="Menu Item with _Icon">
|
||||||
<MenuItem.Icon>
|
<MenuItem.Icon>
|
||||||
<CheckBox
|
<CheckBox
|
||||||
Padding="0"
|
Padding="0"
|
||||||
@@ -95,6 +111,7 @@
|
|||||||
IsHitTestVisible="False" />
|
IsHitTestVisible="False" />
|
||||||
</MenuItem.Icon>
|
</MenuItem.Icon>
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
|
<MenuItem Header="Menu Item with _Checkbox" ToggleType="CheckBox" />
|
||||||
<MenuItem Header="Menu Item that won't close on click" StaysOpenOnClick="True" />
|
<MenuItem Header="Menu Item that won't close on click" StaysOpenOnClick="True" />
|
||||||
</ContextMenu>
|
</ContextMenu>
|
||||||
</Border.ContextMenu>
|
</Border.ContextMenu>
|
||||||
@@ -113,7 +130,7 @@
|
|||||||
<MenuItem Header="Submenu _1" />
|
<MenuItem Header="Submenu _1" />
|
||||||
<MenuItem Header="Submenu _2" />
|
<MenuItem Header="Submenu _2" />
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
<MenuItem Header="Menu Item with _Checkbox">
|
<MenuItem Header="Menu Item with _Icon">
|
||||||
<MenuItem.Icon>
|
<MenuItem.Icon>
|
||||||
<CheckBox
|
<CheckBox
|
||||||
Padding="0"
|
Padding="0"
|
||||||
@@ -122,6 +139,7 @@
|
|||||||
IsHitTestVisible="False" />
|
IsHitTestVisible="False" />
|
||||||
</MenuItem.Icon>
|
</MenuItem.Icon>
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
|
<MenuItem Header="Menu Item with _Checkbox" ToggleType="CheckBox" />
|
||||||
</MenuFlyout>
|
</MenuFlyout>
|
||||||
</Border.ContextFlyout>
|
</Border.ContextFlyout>
|
||||||
<TextBlock Text="Right Click to show Context Flyout" />
|
<TextBlock Text="Right Click to show Context Flyout" />
|
||||||
|
|||||||
@@ -8,10 +8,17 @@
|
|||||||
d:DesignWidth="800"
|
d:DesignWidth="800"
|
||||||
mc:Ignorable="d">
|
mc:Ignorable="d">
|
||||||
<StackPanel HorizontalAlignment="Left" Spacing="20">
|
<StackPanel HorizontalAlignment="Left" Spacing="20">
|
||||||
|
<StackPanel.Styles>
|
||||||
|
<Style Selector="Button">
|
||||||
|
<Setter Property="Theme" Value="{DynamicResource SolidButton}" />
|
||||||
|
<Setter Property="HorizontalAlignment" Value="Stretch" />
|
||||||
|
</Style>
|
||||||
|
</StackPanel.Styles>
|
||||||
|
|
||||||
<Button Click="InfoButton_OnClick" Content="Default" />
|
<Button Click="InfoButton_OnClick" Content="Default" />
|
||||||
<Button Click="InfoButton_OnClick" Content="Information" />
|
<Button Click="InfoButton_OnClick" Content="Information" />
|
||||||
<Button Click="InfoButton_OnClick" Content="Success" />
|
<Button Click="InfoButton_OnClick" Content="Success" Classes="Success" />
|
||||||
<Button Click="InfoButton_OnClick" Content="Warning" />
|
<Button Click="InfoButton_OnClick" Content="Warning" Classes="Warning" />
|
||||||
<Button Click="InfoButton_OnClick" Content="Error" />
|
<Button Click="InfoButton_OnClick" Content="Error" Classes="Danger" />
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
</UserControl>
|
</UserControl>
|
||||||
@@ -4,38 +4,53 @@
|
|||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||||
d:DesignHeight="450"
|
d:DesignHeight="800"
|
||||||
d:DesignWidth="800"
|
d:DesignWidth="800"
|
||||||
mc:Ignorable="d">
|
mc:Ignorable="d">
|
||||||
<StackPanel HorizontalAlignment="Left" Spacing="20">
|
<StackPanel HorizontalAlignment="Left" Spacing="20">
|
||||||
<NumericUpDown
|
<StackPanel.Styles>
|
||||||
Width="200"
|
<Style Selector="NumericUpDown">
|
||||||
Maximum="100"
|
<Setter Property="Width" Value="300" />
|
||||||
Minimum="0" />
|
<Setter Property="Maximum" Value="100" />
|
||||||
<NumericUpDown
|
<Setter Property="Minimum" Value="0" />
|
||||||
Width="200"
|
</Style>
|
||||||
Increment="10"
|
</StackPanel.Styles>
|
||||||
Maximum="100"
|
|
||||||
Minimum="0" />
|
<NumericUpDown />
|
||||||
<NumericUpDown
|
<NumericUpDown Increment="10" />
|
||||||
Width="200"
|
<NumericUpDown ButtonSpinnerLocation="Left" />
|
||||||
ButtonSpinnerLocation="Left"
|
<NumericUpDown ShowButtonSpinner="False" />
|
||||||
Maximum="100"
|
<NumericUpDown Classes="Large" />
|
||||||
Minimum="0" />
|
<NumericUpDown Classes="Small" />
|
||||||
<NumericUpDown
|
<NumericUpDown InnerLeftContent="Price" InnerRightContent="$" />
|
||||||
Width="200"
|
|
||||||
Maximum="100"
|
<StackPanel Orientation="Horizontal">
|
||||||
Minimum="0"
|
<NumericUpDown
|
||||||
ShowButtonSpinner="False" />
|
Width="100"
|
||||||
<NumericUpDown
|
Classes="Large"
|
||||||
Width="200"
|
Watermark="Large"
|
||||||
Classes="Large"
|
ButtonSpinnerLocation="Left" />
|
||||||
Maximum="100"
|
<NumericUpDown
|
||||||
Minimum="0" />
|
Width="100"
|
||||||
<NumericUpDown
|
Watermark="Default"
|
||||||
Width="200"
|
ShowButtonSpinner="False" />
|
||||||
Classes="Small"
|
<NumericUpDown
|
||||||
Maximum="100"
|
Width="100"
|
||||||
Minimum="0" />
|
Watermark="Small"
|
||||||
|
Classes="Small" />
|
||||||
|
</StackPanel>
|
||||||
|
|
||||||
|
<StackPanel Orientation="Horizontal">
|
||||||
|
<NumericUpDown Width="100" ButtonSpinnerLocation="Left" />
|
||||||
|
<NumericUpDown Width="100" ShowButtonSpinner="False" />
|
||||||
|
<NumericUpDown Width="100" />
|
||||||
|
</StackPanel>
|
||||||
|
|
||||||
|
<StackPanel Orientation="Horizontal">
|
||||||
|
<NumericUpDown Width="100" ShowButtonSpinner="False" />
|
||||||
|
<NumericUpDown Width="100" IsEnabled="False" />
|
||||||
|
<NumericUpDown Width="100" ButtonSpinnerLocation="Left" />
|
||||||
|
</StackPanel>
|
||||||
|
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
</UserControl>
|
</UserControl>
|
||||||
@@ -87,31 +87,37 @@
|
|||||||
Margin="0,8"
|
Margin="0,8"
|
||||||
Classes="Primary"
|
Classes="Primary"
|
||||||
Content="Primary"
|
Content="Primary"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
Theme="{DynamicResource SolidButton}" />
|
Theme="{DynamicResource SolidButton}" />
|
||||||
<Button
|
<Button
|
||||||
Margin="0,8"
|
Margin="0,8"
|
||||||
Classes="Secondary"
|
Classes="Secondary"
|
||||||
Content="Secondary"
|
Content="Secondary"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
Theme="{DynamicResource SolidButton}" />
|
Theme="{DynamicResource SolidButton}" />
|
||||||
<Button
|
<Button
|
||||||
Margin="0,8"
|
Margin="0,8"
|
||||||
Classes="Tertiary"
|
Classes="Tertiary"
|
||||||
Content="Tertiary"
|
Content="Tertiary"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
Theme="{DynamicResource SolidButton}" />
|
Theme="{DynamicResource SolidButton}" />
|
||||||
<Button
|
<Button
|
||||||
Margin="0,8"
|
Margin="0,8"
|
||||||
Classes="Success"
|
Classes="Success"
|
||||||
Content="Success"
|
Content="Success"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
Theme="{DynamicResource SolidButton}" />
|
Theme="{DynamicResource SolidButton}" />
|
||||||
<Button
|
<Button
|
||||||
Margin="0,8"
|
Margin="0,8"
|
||||||
Classes="Warning"
|
Classes="Warning"
|
||||||
Content="Warning"
|
Content="Warning"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
Theme="{DynamicResource SolidButton}" />
|
Theme="{DynamicResource SolidButton}" />
|
||||||
<Button
|
<Button
|
||||||
Margin="0,8"
|
Margin="0,8"
|
||||||
Classes="Danger"
|
Classes="Danger"
|
||||||
Content="Danger"
|
Content="Danger"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
Theme="{DynamicResource SolidButton}" />
|
Theme="{DynamicResource SolidButton}" />
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
<Calendar Margin="16,0" />
|
<Calendar Margin="16,0" />
|
||||||
@@ -194,26 +200,32 @@
|
|||||||
<StackPanel Margin="16,0">
|
<StackPanel Margin="16,0">
|
||||||
<Button
|
<Button
|
||||||
Margin="0,8"
|
Margin="0,8"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
Classes="Primary"
|
Classes="Primary"
|
||||||
Content="Primary" />
|
Content="Primary" />
|
||||||
<Button
|
<Button
|
||||||
Margin="0,8"
|
Margin="0,8"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
Classes="Secondary"
|
Classes="Secondary"
|
||||||
Content="Secondary" />
|
Content="Secondary" />
|
||||||
<Button
|
<Button
|
||||||
Margin="0,8"
|
Margin="0,8"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
Classes="Tertiary"
|
Classes="Tertiary"
|
||||||
Content="Tertiary" />
|
Content="Tertiary" />
|
||||||
<Button
|
<Button
|
||||||
Margin="0,8"
|
Margin="0,8"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
Classes="Success"
|
Classes="Success"
|
||||||
Content="Success" />
|
Content="Success" />
|
||||||
<Button
|
<Button
|
||||||
Margin="0,8"
|
Margin="0,8"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
Classes="Warning"
|
Classes="Warning"
|
||||||
Content="Warning" />
|
Content="Warning" />
|
||||||
<Button
|
<Button
|
||||||
Margin="0,8"
|
Margin="0,8"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
Classes="Danger"
|
Classes="Danger"
|
||||||
Content="Danger" />
|
Content="Danger" />
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
|
|||||||
@@ -155,7 +155,7 @@
|
|||||||
Value="60" />
|
Value="60" />
|
||||||
<ProgressBar
|
<ProgressBar
|
||||||
Width="200"
|
Width="200"
|
||||||
Classes="Error"
|
Classes="Danger"
|
||||||
Maximum="100"
|
Maximum="100"
|
||||||
Minimum="0"
|
Minimum="0"
|
||||||
ShowProgressText="True"
|
ShowProgressText="True"
|
||||||
|
|||||||
@@ -4,12 +4,24 @@
|
|||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||||
|
xmlns:pages="clr-namespace:Semi.Avalonia.Demo.Pages"
|
||||||
d:DesignHeight="450"
|
d:DesignHeight="450"
|
||||||
d:DesignWidth="800"
|
d:DesignWidth="800"
|
||||||
|
x:DataType="pages:RefreshContainerDemoViewModel"
|
||||||
|
x:CompileBindings="True"
|
||||||
mc:Ignorable="d">
|
mc:Ignorable="d">
|
||||||
<StackPanel HorizontalAlignment="Left" Spacing="20">
|
<DockPanel HorizontalAlignment="Stretch" VerticalAlignment="Top">
|
||||||
<RefreshContainer Name="container">
|
<Label DockPanel.Dock="Top">A control that supports pull to refresh</Label>
|
||||||
<TextBlock Text="Content" />
|
<RefreshContainer Name="Refresh"
|
||||||
|
DockPanel.Dock="Bottom"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
|
VerticalAlignment="Stretch"
|
||||||
|
PullDirection="TopToBottom"
|
||||||
|
RefreshRequested="RefreshContainerPage_RefreshRequested"
|
||||||
|
Margin="5">
|
||||||
|
<ListBox HorizontalAlignment="Stretch"
|
||||||
|
VerticalAlignment="Top"
|
||||||
|
ItemsSource="{Binding Items}" />
|
||||||
</RefreshContainer>
|
</RefreshContainer>
|
||||||
</StackPanel>
|
</DockPanel>
|
||||||
</UserControl>
|
</UserControl>
|
||||||
|
|||||||
@@ -1,14 +1,46 @@
|
|||||||
using Avalonia;
|
using System.Collections.ObjectModel;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Threading.Tasks;
|
||||||
using Avalonia.Controls;
|
using Avalonia.Controls;
|
||||||
using Avalonia.Interactivity;
|
using CommunityToolkit.Mvvm.ComponentModel;
|
||||||
using Avalonia.Markup.Xaml;
|
|
||||||
|
|
||||||
namespace Semi.Avalonia.Demo.Pages;
|
namespace Semi.Avalonia.Demo.Pages;
|
||||||
|
|
||||||
public partial class RefreshContainerDemo : UserControl
|
public partial class RefreshContainerDemo : UserControl
|
||||||
{
|
{
|
||||||
|
private RefreshContainerDemoViewModel _viewModel;
|
||||||
|
|
||||||
public RefreshContainerDemo()
|
public RefreshContainerDemo()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
|
||||||
|
_viewModel = new RefreshContainerDemoViewModel();
|
||||||
|
|
||||||
|
DataContext = _viewModel;
|
||||||
|
}
|
||||||
|
|
||||||
|
private async void RefreshContainerPage_RefreshRequested(object? sender, RefreshRequestedEventArgs e)
|
||||||
|
{
|
||||||
|
var deferral = e.GetDeferral();
|
||||||
|
|
||||||
|
await _viewModel.AddToTop();
|
||||||
|
|
||||||
|
deferral.Complete();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class RefreshContainerDemoViewModel : ObservableObject
|
||||||
|
{
|
||||||
|
public ObservableCollection<string> Items { get; }
|
||||||
|
|
||||||
|
public RefreshContainerDemoViewModel()
|
||||||
|
{
|
||||||
|
Items = new ObservableCollection<string>(Enumerable.Range(1, 200).Select(i => $"Item {i}"));
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task AddToTop()
|
||||||
|
{
|
||||||
|
await Task.Delay(1000);
|
||||||
|
Items.Insert(0, $"Item {200 - Items.Count}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -16,7 +16,7 @@
|
|||||||
<RepeatButton Classes="Success">Success</RepeatButton>
|
<RepeatButton Classes="Success">Success</RepeatButton>
|
||||||
<RepeatButton Classes="Warning">Warning</RepeatButton>
|
<RepeatButton Classes="Warning">Warning</RepeatButton>
|
||||||
<RepeatButton Classes="Danger">Danger</RepeatButton>
|
<RepeatButton Classes="Danger">Danger</RepeatButton>
|
||||||
<RepeatButton Classes="Primary" IsEnabled="False">Danger</RepeatButton>
|
<RepeatButton Classes="Danger" IsEnabled="False">Disabled</RepeatButton>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
<TextBlock>Solid</TextBlock>
|
<TextBlock>Solid</TextBlock>
|
||||||
<StackPanel Orientation="Horizontal" Spacing="20">
|
<StackPanel Orientation="Horizontal" Spacing="20">
|
||||||
@@ -27,10 +27,25 @@
|
|||||||
<RepeatButton Classes="Warning" Theme="{DynamicResource SolidRepeatButton}">Warning</RepeatButton>
|
<RepeatButton Classes="Warning" Theme="{DynamicResource SolidRepeatButton}">Warning</RepeatButton>
|
||||||
<RepeatButton Classes="Danger" Theme="{DynamicResource SolidRepeatButton}">Danger</RepeatButton>
|
<RepeatButton Classes="Danger" Theme="{DynamicResource SolidRepeatButton}">Danger</RepeatButton>
|
||||||
<RepeatButton
|
<RepeatButton
|
||||||
Classes="Primary"
|
Classes="Danger"
|
||||||
IsEnabled="False"
|
IsEnabled="False"
|
||||||
Theme="{DynamicResource SolidRepeatButton}">
|
Theme="{DynamicResource SolidRepeatButton}">
|
||||||
Danger
|
Disabled
|
||||||
|
</RepeatButton>
|
||||||
|
</StackPanel>
|
||||||
|
<TextBlock>Outline</TextBlock>
|
||||||
|
<StackPanel Orientation="Horizontal" Spacing="20">
|
||||||
|
<RepeatButton Classes="Primary" Theme="{DynamicResource OutlineRepeatButton}">Primary</RepeatButton>
|
||||||
|
<RepeatButton Classes="Secondary" Theme="{DynamicResource OutlineRepeatButton}">Secondary</RepeatButton>
|
||||||
|
<RepeatButton Classes="Tertiary" Theme="{DynamicResource OutlineRepeatButton}">Tertiary</RepeatButton>
|
||||||
|
<RepeatButton Classes="Success" Theme="{DynamicResource OutlineRepeatButton}">Success</RepeatButton>
|
||||||
|
<RepeatButton Classes="Warning" Theme="{DynamicResource OutlineRepeatButton}">Warning</RepeatButton>
|
||||||
|
<RepeatButton Classes="Danger" Theme="{DynamicResource OutlineRepeatButton}">Danger</RepeatButton>
|
||||||
|
<RepeatButton
|
||||||
|
Classes="Danger"
|
||||||
|
IsEnabled="False"
|
||||||
|
Theme="{DynamicResource OutlineRepeatButton}">
|
||||||
|
Disabled
|
||||||
</RepeatButton>
|
</RepeatButton>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
<TextBlock>Borderless</TextBlock>
|
<TextBlock>Borderless</TextBlock>
|
||||||
@@ -42,11 +57,24 @@
|
|||||||
<RepeatButton Classes="Warning" Theme="{DynamicResource BorderlessRepeatButton}">Warning</RepeatButton>
|
<RepeatButton Classes="Warning" Theme="{DynamicResource BorderlessRepeatButton}">Warning</RepeatButton>
|
||||||
<RepeatButton Classes="Danger" Theme="{DynamicResource BorderlessRepeatButton}">Danger</RepeatButton>
|
<RepeatButton Classes="Danger" Theme="{DynamicResource BorderlessRepeatButton}">Danger</RepeatButton>
|
||||||
<RepeatButton
|
<RepeatButton
|
||||||
Classes="Primary"
|
Classes="Danger"
|
||||||
IsEnabled="False"
|
IsEnabled="False"
|
||||||
Theme="{DynamicResource BorderlessRepeatButton}">
|
Theme="{DynamicResource BorderlessRepeatButton}">
|
||||||
Danger
|
Disabled
|
||||||
</RepeatButton>
|
</RepeatButton>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
|
<TextBlock>Disabled</TextBlock>
|
||||||
|
<StackPanel Background="{DynamicResource SemiColorBackground1}" Orientation="Horizontal" Spacing="20">
|
||||||
|
<Button IsEnabled="False">Light</Button>
|
||||||
|
<Button IsEnabled="False" Theme="{DynamicResource SolidButton}">Solid</Button>
|
||||||
|
<Button IsEnabled="False" Theme="{DynamicResource OutlineButton}">Outline</Button>
|
||||||
|
<Button IsEnabled="False" Theme="{DynamicResource BorderlessButton}">Borderless</Button>
|
||||||
|
</StackPanel>
|
||||||
|
<TextBlock>Size Classes</TextBlock>
|
||||||
|
<StackPanel Orientation="Horizontal" Spacing="20">
|
||||||
|
<RepeatButton Classes="Small">Small</RepeatButton>
|
||||||
|
<RepeatButton>Default</RepeatButton>
|
||||||
|
<RepeatButton Classes="Large">Large</RepeatButton>
|
||||||
|
</StackPanel>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
</UserControl>
|
</UserControl>
|
||||||
@@ -4,143 +4,190 @@
|
|||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||||
d:DesignHeight="450"
|
xmlns:pages="clr-namespace:Semi.Avalonia.Demo.Pages"
|
||||||
|
d:DesignHeight="1000"
|
||||||
d:DesignWidth="800"
|
d:DesignWidth="800"
|
||||||
mc:Ignorable="d">
|
mc:Ignorable="d">
|
||||||
|
<Design.DataContext>
|
||||||
|
<pages:SplitViewDemoViewModel />
|
||||||
|
</Design.DataContext>
|
||||||
|
<UserControl.Resources>
|
||||||
|
<ResourceDictionary>
|
||||||
|
<StreamGeometry x:Key="NavigationMenuExpandIconGlyph">M5 2H19C20.6569 2 22 3.34315 22 5V19C22 20.6569 20.6569 22 19 22H5C3.34315 22 2 20.6569 2 19V5C2 3.34315 3.34315 2 5 2ZM6 4C5.44772 4 5 4.44772 5 5V19C5 19.5523 5.44772 20 6 20H9C9.55229 20 10 19.5523 10 19V5C10 4.44772 9.55229 4 9 4H6Z</StreamGeometry>
|
||||||
|
</ResourceDictionary>
|
||||||
|
</UserControl.Resources>
|
||||||
<Border>
|
<Border>
|
||||||
<Grid ColumnDefinitions="*,400">
|
<Grid ColumnDefinitions="*,400">
|
||||||
<StackPanel
|
<Border Grid.Column="1" VerticalAlignment="Top" Margin="10 0 0 0">
|
||||||
Grid.Column="1"
|
<Grid RowDefinitions="*, *, *, *, *, *" ColumnDefinitions="Auto, *">
|
||||||
Orientation="Vertical"
|
<Label
|
||||||
Spacing="4">
|
Grid.Row="0" Grid.Column="0"
|
||||||
<ToggleButton
|
VerticalAlignment="Center"
|
||||||
Name="PaneOpenButton"
|
Content="IsPaneOpen" />
|
||||||
Content="IsPaneOpen"
|
<ToggleSwitch
|
||||||
IsChecked="{Binding IsPaneOpen, ElementName=SplitView}" />
|
Grid.Row="0" Grid.Column="1"
|
||||||
|
Name="PaneOpenButton"
|
||||||
|
IsChecked="{Binding #SplitView.IsPaneOpen}" />
|
||||||
|
|
||||||
<ToggleButton
|
<Label
|
||||||
Name="UseLightDismissOverlayModeButton"
|
Grid.Row="1" Grid.Column="0"
|
||||||
Content="UseLightDismissOverlayMode"
|
VerticalAlignment="Center"
|
||||||
IsChecked="{Binding UseLightDismissOverlayMode, ElementName=SplitView}" />
|
Content="UseLightDismissOverlayMode" />
|
||||||
|
<ToggleSwitch
|
||||||
|
Grid.Row="1" Grid.Column="1"
|
||||||
|
Name="UseLightDismissOverlayModeButton"
|
||||||
|
IsChecked="{Binding #SplitView.UseLightDismissOverlayMode}" />
|
||||||
|
|
||||||
<ToggleSwitch
|
<Label
|
||||||
Content="Placement"
|
Grid.Row="2" Grid.Column="0"
|
||||||
OffContent="Left"
|
VerticalAlignment="Center"
|
||||||
OnContent="Right" />
|
Content="Placement" />
|
||||||
|
<ToggleSwitch
|
||||||
|
Grid.Row="2" Grid.Column="1"
|
||||||
|
OffContent="Left"
|
||||||
|
OnContent="Right"
|
||||||
|
IsChecked="{Binding #SplitView.PanePlacement}" />
|
||||||
|
|
||||||
<TextBlock Text="DisplayMode" />
|
<Label
|
||||||
<ComboBox
|
Grid.Row="3" Grid.Column="0"
|
||||||
Name="DisplayModeSelector"
|
VerticalAlignment="Center"
|
||||||
Width="170"
|
Content="DisplayMode" />
|
||||||
Margin="10"
|
<ComboBox
|
||||||
SelectedIndex="{Binding DisplayMode}">
|
Grid.Row="3" Grid.Column="1"
|
||||||
<ComboBoxItem>Inline</ComboBoxItem>
|
Name="DisplayModeSelector"
|
||||||
<ComboBoxItem>CompactInline</ComboBoxItem>
|
HorizontalAlignment="Stretch"
|
||||||
<ComboBoxItem>Overlay</ComboBoxItem>
|
ItemsSource="{Binding DisplayModes}"
|
||||||
<ComboBoxItem>CompactOverlay</ComboBoxItem>
|
SelectedIndex="{Binding #SplitView.DisplayMode}" />
|
||||||
</ComboBox>
|
|
||||||
|
|
||||||
<TextBlock Text="PaneBackground" />
|
<Label
|
||||||
<ComboBox
|
Grid.Row="4" Grid.Column="0"
|
||||||
Name="PaneBackgroundSelector"
|
VerticalAlignment="Center"
|
||||||
Width="170"
|
Content="{Binding #CompactPaneLengthSlider.Value, StringFormat='{}CompactPaneLength: {0}'}" />
|
||||||
Margin="10"
|
<Slider
|
||||||
SelectedIndex="0">
|
Grid.Row="4" Grid.Column="1"
|
||||||
<ComboBoxItem Tag="White">White</ComboBoxItem>
|
Name="CompactPaneLengthSlider"
|
||||||
<ComboBoxItem Tag="Red">Red</ComboBoxItem>
|
Maximum="128"
|
||||||
<ComboBoxItem Tag="Blue">Blue</ComboBoxItem>
|
Minimum="0"
|
||||||
<ComboBoxItem Tag="Green">Green</ComboBoxItem>
|
TickFrequency="1"
|
||||||
</ComboBox>
|
IsSnapToTickEnabled="True"
|
||||||
|
Value="{Binding #SplitView.CompactPaneLength}" />
|
||||||
|
|
||||||
<TextBlock Text="{Binding Value, ElementName=OpenPaneLengthSlider, StringFormat='{}OpenPaneLength: {0}'}" />
|
<Label
|
||||||
<Slider
|
Grid.Row="5" Grid.Column="0"
|
||||||
Name="OpenPaneLengthSlider"
|
VerticalAlignment="Center"
|
||||||
Width="150"
|
Content="{Binding #OpenPaneLengthSlider.Value,StringFormat='{}OpenPaneLength: {0}'}" />
|
||||||
Maximum="500"
|
<Slider
|
||||||
Minimum="128"
|
Grid.Row="5" Grid.Column="1"
|
||||||
Value="256" />
|
Name="OpenPaneLengthSlider"
|
||||||
|
Maximum="500"
|
||||||
<TextBlock Text="{Binding Value, ElementName=CompactPaneLengthSlider, StringFormat='{}CompactPaneLength: {0}'}" />
|
Minimum="128"
|
||||||
<Slider
|
TickFrequency="1"
|
||||||
Name="CompactPaneLengthSlider"
|
IsSnapToTickEnabled="True"
|
||||||
Width="150"
|
Value="{Binding #SplitView.OpenPaneLength}" />
|
||||||
Maximum="128"
|
</Grid>
|
||||||
Minimum="24"
|
</Border>
|
||||||
Value="48" />
|
<Border
|
||||||
</StackPanel>
|
Grid.Column="0"
|
||||||
<Border BorderBrush="{DynamicResource SystemControlHighlightBaseLowBrush}" BorderThickness="1">
|
BorderBrush="{DynamicResource SemiGrey1}"
|
||||||
<!-- {Binding SelectedItem.Tag, ElementName=PaneBackgroundSelector} -->
|
BorderThickness="1">
|
||||||
<SplitView
|
<SplitView
|
||||||
Name="SplitView"
|
Name="SplitView"
|
||||||
CompactPaneLength="{Binding Value, ElementName=CompactPaneLengthSlider}"
|
|
||||||
DisplayMode="CompactOverlay"
|
DisplayMode="CompactOverlay"
|
||||||
OpenPaneLength="{Binding Value, ElementName=OpenPaneLengthSlider}"
|
CompactPaneLength="48"
|
||||||
PaneBackground="{Binding SelectedItem.Tag, ElementName=PaneBackgroundSelector}"
|
OpenPaneLength="256">
|
||||||
PanePlacement="{Binding PanePlacement}">
|
<SplitView.Background>
|
||||||
|
<LinearGradientBrush StartPoint="0%,0%" EndPoint="0%,100%">
|
||||||
|
<GradientStop Color="#6b4c1b" Offset="0" />
|
||||||
|
<GradientStop Color="#291e10" Offset="1" />
|
||||||
|
</LinearGradientBrush>
|
||||||
|
</SplitView.Background>
|
||||||
<SplitView.Pane>
|
<SplitView.Pane>
|
||||||
<Grid RowDefinitions="Auto,Auto,*,Auto">
|
<Grid RowDefinitions="Auto,*,Auto">
|
||||||
<TextBlock
|
<TextBlock
|
||||||
|
Grid.Row="0"
|
||||||
Name="PaneHeader"
|
Name="PaneHeader"
|
||||||
Margin="5,12,0,0"
|
Margin="8,12"
|
||||||
FontWeight="Bold"
|
FontWeight="Bold"
|
||||||
Text="PANE CONTENT" />
|
Text="Playlist" />
|
||||||
<ComboBox Grid.Row="1" Width="150">
|
<ListBox
|
||||||
<ComboBoxItem Content="Item1" />
|
Grid.Row="1"
|
||||||
<ComboBoxItem Content="Item2" />
|
ItemsSource="{Binding Songs}" />
|
||||||
<ComboBoxItem Content="Item3" />
|
<ToggleSwitch
|
||||||
</ComboBox>
|
|
||||||
<ListBoxItem
|
|
||||||
Grid.Row="2"
|
Grid.Row="2"
|
||||||
Margin="0,10"
|
Theme="{DynamicResource ButtonToggleSwitch}"
|
||||||
VerticalAlignment="Top">
|
IsChecked="{Binding #SplitView.IsPaneOpen}">
|
||||||
<StackPanel Orientation="Horizontal">
|
<ToggleSwitch.OnContent>
|
||||||
<!-- Path glyph from materialdesignicons.com -->
|
<PathIcon
|
||||||
<Border Width="48">
|
Width="16"
|
||||||
<Viewbox
|
Height="16"
|
||||||
Width="24"
|
Data="{StaticResource NavigationMenuExpandIconGlyph}" />
|
||||||
Height="24"
|
</ToggleSwitch.OnContent>
|
||||||
HorizontalAlignment="Left">
|
<ToggleSwitch.OffContent>
|
||||||
<Canvas Width="24" Height="24">
|
<PathIcon
|
||||||
<Path Data="M16 17V19H2V17S2 13 9 13 16 17 16 17M12.5 7.5A3.5 3.5 0 1 0 9 11A3.5 3.5 0 0 0 12.5 7.5M15.94 13A5.32 5.32 0 0 1 18 17V19H22V17S22 13.37 15.94 13M15 4A3.39 3.39 0 0 0 13.07 4.59A5 5 0 0 1 13.07 10.41A3.39 3.39 0 0 0 15 11A3.5 3.5 0 0 0 15 4Z" Fill="{DynamicResource SystemControlForegroundBaseHighBrush}" />
|
Width="16"
|
||||||
</Canvas>
|
Height="16"
|
||||||
</Viewbox>
|
Data="{StaticResource NavigationMenuExpandIconGlyph}" />
|
||||||
</Border>
|
</ToggleSwitch.OffContent>
|
||||||
<TextBlock VerticalAlignment="Center" Text="People" />
|
</ToggleSwitch>
|
||||||
</StackPanel>
|
|
||||||
</ListBoxItem>
|
|
||||||
<TextBlock
|
|
||||||
Grid.Row="3"
|
|
||||||
Margin="60,12"
|
|
||||||
Text="Item at bottom" />
|
|
||||||
</Grid>
|
</Grid>
|
||||||
</SplitView.Pane>
|
</SplitView.Pane>
|
||||||
|
|
||||||
<Grid>
|
<Panel>
|
||||||
<Grid.Styles>
|
<Panel.Styles>
|
||||||
<Style Selector="TextBlock">
|
<Style Selector="Image#AlbumCover">
|
||||||
<Setter Property="FontSize" Value="14" />
|
<Style.Animations>
|
||||||
<Setter Property="FontWeight" Value="700" />
|
<Animation IterationCount="Infinite" Duration="0:0:40">
|
||||||
|
<KeyFrame Cue="0%">
|
||||||
|
<Setter Property="RotateTransform.Angle" Value="0" />
|
||||||
|
</KeyFrame>
|
||||||
|
<KeyFrame Cue="100%">
|
||||||
|
<Setter Property="RotateTransform.Angle" Value="360" />
|
||||||
|
</KeyFrame>
|
||||||
|
</Animation>
|
||||||
|
</Style.Animations>
|
||||||
</Style>
|
</Style>
|
||||||
</Grid.Styles>
|
</Panel.Styles>
|
||||||
<TextBlock
|
<Image
|
||||||
HorizontalAlignment="Center"
|
Source="/Assets/WORLD.png"
|
||||||
VerticalAlignment="Center"
|
Name="AlbumCover"
|
||||||
Text="SplitViewContent" />
|
Width="200"
|
||||||
<TextBlock Text="SplitViewContent" TextAlignment="Left" />
|
Height="200" />
|
||||||
<TextBlock
|
<Arc
|
||||||
HorizontalAlignment="Right"
|
Width="290"
|
||||||
Text="SplitViewContent"
|
Height="290"
|
||||||
TextAlignment="Left" />
|
StartAngle="0"
|
||||||
<TextBlock
|
SweepAngle="360"
|
||||||
VerticalAlignment="Bottom"
|
StrokeJoin="Round"
|
||||||
Text="SplitViewContent"
|
StrokeLineCap="Round"
|
||||||
TextAlignment="Left" />
|
StrokeThickness="45">
|
||||||
<TextBlock
|
<Arc.Stroke>
|
||||||
HorizontalAlignment="Right"
|
<LinearGradientBrush StartPoint="0%,0%" EndPoint="100%,0%">
|
||||||
VerticalAlignment="Bottom"
|
<GradientStop Color="#010101" Offset="0" />
|
||||||
Text="SplitViewContent"
|
<GradientStop Color="#363636" Offset="0.5" />
|
||||||
TextAlignment="Left" />
|
<GradientStop Color="#010101" Offset="1" />
|
||||||
</Grid>
|
</LinearGradientBrush>
|
||||||
|
</Arc.Stroke>
|
||||||
|
</Arc>
|
||||||
|
<Arc
|
||||||
|
Width="294"
|
||||||
|
Height="294"
|
||||||
|
StartAngle="0"
|
||||||
|
SweepAngle="360"
|
||||||
|
StrokeJoin="Round"
|
||||||
|
StrokeLineCap="Round"
|
||||||
|
StrokeThickness="4"
|
||||||
|
Stroke="Black" />
|
||||||
|
<Arc
|
||||||
|
Width="310"
|
||||||
|
Height="310"
|
||||||
|
StartAngle="0"
|
||||||
|
SweepAngle="360"
|
||||||
|
StrokeJoin="Round"
|
||||||
|
StrokeLineCap="Round"
|
||||||
|
StrokeThickness="10"
|
||||||
|
Stroke="#C6CACD"
|
||||||
|
Opacity="0.1" />
|
||||||
|
</Panel>
|
||||||
|
|
||||||
</SplitView>
|
</SplitView>
|
||||||
</Border>
|
</Border>
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
using Avalonia;
|
using System.Collections.ObjectModel;
|
||||||
using Avalonia.Controls;
|
using Avalonia.Controls;
|
||||||
using Avalonia.Markup.Xaml;
|
using Avalonia.Markup.Xaml;
|
||||||
|
using CommunityToolkit.Mvvm.ComponentModel;
|
||||||
|
|
||||||
namespace Semi.Avalonia.Demo.Pages;
|
namespace Semi.Avalonia.Demo.Pages;
|
||||||
|
|
||||||
@@ -9,6 +10,7 @@ public partial class SplitViewDemo : UserControl
|
|||||||
public SplitViewDemo()
|
public SplitViewDemo()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
this.DataContext = new SplitViewDemoViewModel();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void InitializeComponent()
|
private void InitializeComponent()
|
||||||
@@ -16,3 +18,27 @@ public partial class SplitViewDemo : UserControl
|
|||||||
AvaloniaXamlLoader.Load(this);
|
AvaloniaXamlLoader.Load(this);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public class SplitViewDemoViewModel : ObservableObject
|
||||||
|
{
|
||||||
|
public ObservableCollection<string> Songs { get; set; } =
|
||||||
|
[
|
||||||
|
"320万年前",
|
||||||
|
"隐德来希",
|
||||||
|
"孔明",
|
||||||
|
"锦鲤卟噜噜",
|
||||||
|
"指鹿为马",
|
||||||
|
"热带季风Remix",
|
||||||
|
"加州梦境",
|
||||||
|
"渐近自由",
|
||||||
|
"世界所有的烂漫",
|
||||||
|
];
|
||||||
|
|
||||||
|
public ObservableCollection<SplitViewDisplayMode> DisplayModes { get; set; } =
|
||||||
|
[
|
||||||
|
SplitViewDisplayMode.Inline,
|
||||||
|
SplitViewDisplayMode.CompactInline,
|
||||||
|
SplitViewDisplayMode.Overlay,
|
||||||
|
SplitViewDisplayMode.CompactOverlay,
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -5,7 +5,7 @@
|
|||||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||||
xmlns:system="clr-namespace:System;assembly=netstandard"
|
xmlns:system="clr-namespace:System;assembly=netstandard"
|
||||||
d:DesignHeight="450"
|
d:DesignHeight="800"
|
||||||
d:DesignWidth="800"
|
d:DesignWidth="800"
|
||||||
mc:Ignorable="d">
|
mc:Ignorable="d">
|
||||||
<ScrollViewer>
|
<ScrollViewer>
|
||||||
@@ -42,6 +42,41 @@
|
|||||||
InnerLeftContent="http://"
|
InnerLeftContent="http://"
|
||||||
InnerRightContent=".com"
|
InnerRightContent=".com"
|
||||||
IsEnabled="False" />
|
IsEnabled="False" />
|
||||||
|
<StackPanel Orientation="Horizontal">
|
||||||
|
<TextBox
|
||||||
|
Width="150"
|
||||||
|
Classes="Large"
|
||||||
|
Watermark="Large" />
|
||||||
|
<TextBox
|
||||||
|
Width="150"
|
||||||
|
Watermark="Default" />
|
||||||
|
<TextBox
|
||||||
|
Width="150"
|
||||||
|
Classes="Small"
|
||||||
|
Watermark="Small" />
|
||||||
|
</StackPanel>
|
||||||
|
|
||||||
|
<StackPanel Orientation="Horizontal">
|
||||||
|
<TextBox
|
||||||
|
Width="150"
|
||||||
|
IsEnabled="False"
|
||||||
|
Watermark="Disabled" />
|
||||||
|
<TextBox
|
||||||
|
Width="150"
|
||||||
|
Classes="Bordered"
|
||||||
|
Watermark="Bordered" />
|
||||||
|
<TextBox
|
||||||
|
Width="150"
|
||||||
|
Classes="Bordered"
|
||||||
|
IsEnabled="False" />
|
||||||
|
</StackPanel>
|
||||||
|
<TextBox Width="300" Classes="TextArea" />
|
||||||
|
<TextBox
|
||||||
|
Width="300"
|
||||||
|
Theme="{StaticResource LooklessTextBox}"
|
||||||
|
Watermark="Lookless TextBox"
|
||||||
|
InnerLeftContent="http://"
|
||||||
|
InnerRightContent=".com" />
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
</ScrollViewer>
|
</ScrollViewer>
|
||||||
</UserControl>
|
</UserControl>
|
||||||
|
|||||||
@@ -15,5 +15,16 @@
|
|||||||
<TimePicker ClockIdentifier="12HourClock" IsEnabled="False" />
|
<TimePicker ClockIdentifier="12HourClock" IsEnabled="False" />
|
||||||
<TimePicker Classes="Large" />
|
<TimePicker Classes="Large" />
|
||||||
<TimePicker Classes="Small" />
|
<TimePicker Classes="Small" />
|
||||||
|
<StackPanel Orientation="Horizontal">
|
||||||
|
<TimePicker Classes="Large" ClockIdentifier="12HourClock"/>
|
||||||
|
<TimePicker ClockIdentifier="12HourClock"/>
|
||||||
|
<TimePicker Classes="Small" ClockIdentifier="12HourClock"/>
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel Orientation="Horizontal">
|
||||||
|
<TimePicker IsEnabled="False" />
|
||||||
|
<TimePicker Classes="Bordered" />
|
||||||
|
<TimePicker Classes="Bordered" IsEnabled="False" />
|
||||||
|
</StackPanel>
|
||||||
|
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
</UserControl>
|
</UserControl>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
<ToggleButton Classes="Success">Success</ToggleButton>
|
<ToggleButton Classes="Success">Success</ToggleButton>
|
||||||
<ToggleButton Classes="Warning">Warning</ToggleButton>
|
<ToggleButton Classes="Warning">Warning</ToggleButton>
|
||||||
<ToggleButton Classes="Danger">Danger</ToggleButton>
|
<ToggleButton Classes="Danger">Danger</ToggleButton>
|
||||||
<ToggleButton Classes="Danger" IsEnabled="False">Danger</ToggleButton>
|
<ToggleButton Classes="Danger" IsEnabled="False">Disabled</ToggleButton>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
<TextBlock Text="Toggle Button Checked State" />
|
<TextBlock Text="Toggle Button Checked State" />
|
||||||
<StackPanel Orientation="Horizontal" Spacing="20">
|
<StackPanel Orientation="Horizontal" Spacing="20">
|
||||||
@@ -28,18 +28,71 @@
|
|||||||
<ToggleButton Classes="Success" IsChecked="True">Success</ToggleButton>
|
<ToggleButton Classes="Success" IsChecked="True">Success</ToggleButton>
|
||||||
<ToggleButton Classes="Warning" IsChecked="True">Warning</ToggleButton>
|
<ToggleButton Classes="Warning" IsChecked="True">Warning</ToggleButton>
|
||||||
<ToggleButton Classes="Danger" IsChecked="True">Danger</ToggleButton>
|
<ToggleButton Classes="Danger" IsChecked="True">Danger</ToggleButton>
|
||||||
<ToggleButton Classes="Danger" IsChecked="True" IsEnabled="False">Danger</ToggleButton>
|
<ToggleButton
|
||||||
|
Classes="Danger"
|
||||||
|
IsChecked="True"
|
||||||
|
IsEnabled="False">
|
||||||
|
Disabled
|
||||||
|
</ToggleButton>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
<TextBlock Text="Toggle Button Three State" />
|
<TextBlock Text="Toggle Button Three State" />
|
||||||
<StackPanel Orientation="Horizontal" Spacing="20">
|
<StackPanel Orientation="Horizontal" Spacing="20">
|
||||||
<ToggleButton IsThreeState="True" IsChecked="{x:Null}">Default</ToggleButton>
|
<ToggleButton IsChecked="{x:Null}" IsThreeState="True">Default</ToggleButton>
|
||||||
<ToggleButton Classes="Primary" IsThreeState="True" IsChecked="{x:Null}">Primary</ToggleButton>
|
<ToggleButton
|
||||||
<ToggleButton Classes="Secondary" IsThreeState="True" IsChecked="{x:Null}">Secondary</ToggleButton>
|
Classes="Primary"
|
||||||
<ToggleButton Classes="Tertiary" IsThreeState="True" IsChecked="{x:Null}">Tertiary</ToggleButton>
|
IsChecked="{x:Null}"
|
||||||
<ToggleButton Classes="Success" IsThreeState="True" IsChecked="{x:Null}">Success</ToggleButton>
|
IsThreeState="True">
|
||||||
<ToggleButton Classes="Warning" IsThreeState="True" IsChecked="{x:Null}">Warning</ToggleButton>
|
Primary
|
||||||
<ToggleButton Classes="Danger" IsThreeState="True" IsChecked="{x:Null}">Danger</ToggleButton>
|
</ToggleButton>
|
||||||
<ToggleButton Classes="Danger" IsThreeState="True" IsChecked="{x:Null}" IsEnabled="False">Danger</ToggleButton>
|
<ToggleButton
|
||||||
|
Classes="Secondary"
|
||||||
|
IsChecked="{x:Null}"
|
||||||
|
IsThreeState="True">
|
||||||
|
Secondary
|
||||||
|
</ToggleButton>
|
||||||
|
<ToggleButton
|
||||||
|
Classes="Tertiary"
|
||||||
|
IsChecked="{x:Null}"
|
||||||
|
IsThreeState="True">
|
||||||
|
Tertiary
|
||||||
|
</ToggleButton>
|
||||||
|
<ToggleButton
|
||||||
|
Classes="Success"
|
||||||
|
IsChecked="{x:Null}"
|
||||||
|
IsThreeState="True">
|
||||||
|
Success
|
||||||
|
</ToggleButton>
|
||||||
|
<ToggleButton
|
||||||
|
Classes="Warning"
|
||||||
|
IsChecked="{x:Null}"
|
||||||
|
IsThreeState="True">
|
||||||
|
Warning
|
||||||
|
</ToggleButton>
|
||||||
|
<ToggleButton
|
||||||
|
Classes="Danger"
|
||||||
|
IsChecked="{x:Null}"
|
||||||
|
IsThreeState="True">
|
||||||
|
Danger
|
||||||
|
</ToggleButton>
|
||||||
|
<ToggleButton
|
||||||
|
Classes="Danger"
|
||||||
|
IsChecked="{x:Null}"
|
||||||
|
IsEnabled="False"
|
||||||
|
IsThreeState="True">
|
||||||
|
Disabled
|
||||||
|
</ToggleButton>
|
||||||
|
</StackPanel>
|
||||||
|
<TextBlock Text="Toggle Button Disabled State" />
|
||||||
|
<StackPanel Background="{DynamicResource SemiColorBackground1}" Orientation="Horizontal" Spacing="20">
|
||||||
|
<ToggleButton IsThreeState="True" IsEnabled="False">Default</ToggleButton>
|
||||||
|
<ToggleButton IsThreeState="True" IsEnabled="False" IsChecked="True">Checked</ToggleButton>
|
||||||
|
<ToggleButton IsThreeState="True" IsEnabled="False" IsChecked="{x:Null}">Indeterminate</ToggleButton>
|
||||||
|
</StackPanel>
|
||||||
|
<TextBlock Text="Toggle Button Size" />
|
||||||
|
<StackPanel Orientation="Horizontal" Spacing="20">
|
||||||
|
<ToggleButton Classes="Small" IsThreeState="True">Small</ToggleButton>
|
||||||
|
<ToggleButton IsThreeState="True">Default</ToggleButton>
|
||||||
|
<ToggleButton Classes="Large" IsThreeState="True">Large</ToggleButton>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
</UserControl>
|
</UserControl>
|
||||||
@@ -7,7 +7,7 @@
|
|||||||
d:DesignHeight="450"
|
d:DesignHeight="450"
|
||||||
d:DesignWidth="800"
|
d:DesignWidth="800"
|
||||||
mc:Ignorable="d">
|
mc:Ignorable="d">
|
||||||
<StackPanel Spacing="20">
|
<StackPanel Spacing="8" Margin="20">
|
||||||
<ToggleSwitch
|
<ToggleSwitch
|
||||||
Content="Content"
|
Content="Content"
|
||||||
OffContent="OffContent"
|
OffContent="OffContent"
|
||||||
@@ -24,11 +24,19 @@
|
|||||||
IsEnabled="False"
|
IsEnabled="False"
|
||||||
OffContent="OffContent"
|
OffContent="OffContent"
|
||||||
OnContent="OnContent" />
|
OnContent="OnContent" />
|
||||||
<ToggleSwitch
|
<StackPanel Orientation="Horizontal">
|
||||||
Theme="{DynamicResource SimpleToggleSwitch}"
|
<ToggleSwitch Theme="{StaticResource SimpleToggleSwitch}" Classes="Small" />
|
||||||
Content="Content"
|
<ToggleSwitch Theme="{StaticResource SimpleToggleSwitch}" Classes="Small" IsChecked="True"/>
|
||||||
OffContent="OffContent"
|
</StackPanel>
|
||||||
OnContent="OnContent" />
|
<StackPanel Orientation="Horizontal">
|
||||||
|
<ToggleSwitch Theme="{StaticResource SimpleToggleSwitch}" />
|
||||||
|
<ToggleSwitch Theme="{StaticResource SimpleToggleSwitch}" IsChecked="True" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel Orientation="Horizontal">
|
||||||
|
<ToggleSwitch Theme="{StaticResource SimpleToggleSwitch}" Classes="Large" />
|
||||||
|
<ToggleSwitch Theme="{StaticResource SimpleToggleSwitch}" Classes="Large" IsChecked="True"/>
|
||||||
|
</StackPanel>
|
||||||
|
|
||||||
<ToggleSwitch Theme="{DynamicResource ButtonToggleSwitch}">
|
<ToggleSwitch Theme="{DynamicResource ButtonToggleSwitch}">
|
||||||
<ToggleSwitch.OnContent>
|
<ToggleSwitch.OnContent>
|
||||||
<PathIcon
|
<PathIcon
|
||||||
|
|||||||
@@ -1,5 +0,0 @@
|
|||||||
<linker>
|
|
||||||
<!-- Can be removed if CompiledBinding and no reflection are used -->
|
|
||||||
<assembly fullname="Semi.Avalonia.Demo" preserve="All" />
|
|
||||||
<assembly fullname="Avalonia.Themes.Fluent" preserve="All" />
|
|
||||||
</linker>
|
|
||||||
@@ -7,7 +7,6 @@
|
|||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<AvaloniaResource Include="Assets\**" />
|
<AvaloniaResource Include="Assets\**" />
|
||||||
<TrimmerRootDescriptor Include="Roots.xml" />
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|||||||
@@ -121,7 +121,7 @@ public class Song
|
|||||||
new("指鹿为马", "熊猫堂ProducePandas", 3, 12, "W.O.R.L.D.", 74, 2063175272),
|
new("指鹿为马", "熊猫堂ProducePandas", 3, 12, "W.O.R.L.D.", 74, 2063175272),
|
||||||
new("热带季风Remix", "熊猫堂ProducePandas", 3, 22, "W.O.R.L.D.", 23, 2063173319),
|
new("热带季风Remix", "熊猫堂ProducePandas", 3, 22, "W.O.R.L.D.", 23, 2063173319),
|
||||||
new("加州梦境", "熊猫堂ProducePandas", 2, 56, "W.O.R.L.D.", 1662, 2063173324),
|
new("加州梦境", "熊猫堂ProducePandas", 2, 56, "W.O.R.L.D.", 1662, 2063173324),
|
||||||
new("渐进自由", "熊猫堂ProducePandas", 4, 19, "W.O.R.L.D.", 124, 2063173321),
|
new("渐近自由", "熊猫堂ProducePandas", 4, 19, "W.O.R.L.D.", 124, 2063173321),
|
||||||
new("世界所有的烂漫", "熊猫堂ProducePandas", 3, 30, "W.O.R.L.D.", 335, 2053388775),
|
new("世界所有的烂漫", "熊猫堂ProducePandas", 3, 30, "W.O.R.L.D.", 335, 2053388775),
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -47,8 +47,8 @@ public class PaletteDemoViewModel: ObservableObject
|
|||||||
|
|
||||||
public PaletteDemoViewModel()
|
public PaletteDemoViewModel()
|
||||||
{
|
{
|
||||||
_lightResourceDictionary = AvaloniaXamlLoader.Load(new Uri("avares://Semi.Avalonia/Themes/Light/Palette.axaml")) as ResourceDictionary;
|
_lightResourceDictionary = new Light.Palette();
|
||||||
_darkResourceDictionary = AvaloniaXamlLoader.Load(new Uri("avares://Semi.Avalonia/Themes/Dark/Palette.axaml")) as ResourceDictionary;
|
_darkResourceDictionary = new Dark.Palette();
|
||||||
WeakReferenceMessenger.Default.Register<PaletteDemoViewModel, ColorItemViewModel>(this, OnClickColorItem);
|
WeakReferenceMessenger.Default.Register<PaletteDemoViewModel, ColorItemViewModel>(this, OnClickColorItem);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -251,7 +251,7 @@ public static class ColorTokens
|
|||||||
{
|
{
|
||||||
new ("SemiColorPrimary", "Primary"),
|
new ("SemiColorPrimary", "Primary"),
|
||||||
new ("SemiColorPrimaryPointerover", "Primary Pointerover"),
|
new ("SemiColorPrimaryPointerover", "Primary Pointerover"),
|
||||||
new ("SemiColorPrimaryPressed", "Primary Pressed"),
|
new ("SemiColorPrimaryActive", "Primary Active"),
|
||||||
new ("SemiColorPrimaryDisabled", "Primary Disabled"),
|
new ("SemiColorPrimaryDisabled", "Primary Disabled"),
|
||||||
new ("SemiColorPrimaryLight", "Primary Light"),
|
new ("SemiColorPrimaryLight", "Primary Light"),
|
||||||
new ("SemiColorPrimaryLightPointerover", "Primary Light Pointerover"),
|
new ("SemiColorPrimaryLightPointerover", "Primary Light Pointerover"),
|
||||||
@@ -262,7 +262,7 @@ public static class ColorTokens
|
|||||||
{
|
{
|
||||||
new ("SemiColorSecondary", "Secondary"),
|
new ("SemiColorSecondary", "Secondary"),
|
||||||
new ("SemiColorSecondaryPointerover", "Secondary Pointerover"),
|
new ("SemiColorSecondaryPointerover", "Secondary Pointerover"),
|
||||||
new ("SemiColorSecondaryPressed", "Secondary Pressed"),
|
new ("SemiColorSecondaryActive", "Secondary Active"),
|
||||||
new ("SemiColorSecondaryDisabled", "Secondary Disabled"),
|
new ("SemiColorSecondaryDisabled", "Secondary Disabled"),
|
||||||
new ("SemiColorSecondaryLight", "Secondary Light"),
|
new ("SemiColorSecondaryLight", "Secondary Light"),
|
||||||
new ("SemiColorSecondaryLightPointerover", "Secondary Light Pointerover"),
|
new ("SemiColorSecondaryLightPointerover", "Secondary Light Pointerover"),
|
||||||
@@ -273,7 +273,7 @@ public static class ColorTokens
|
|||||||
{
|
{
|
||||||
new ("SemiColorTertiary", "Tertiary"),
|
new ("SemiColorTertiary", "Tertiary"),
|
||||||
new ("SemiColorTertiaryPointerover", "Tertiary Pointerover"),
|
new ("SemiColorTertiaryPointerover", "Tertiary Pointerover"),
|
||||||
new ("SemiColorTertiaryPressed", "Tertiary Pressed"),
|
new ("SemiColorTertiaryActive", "Tertiary Active"),
|
||||||
new ("SemiColorTertiaryLight", "Tertiary Light"),
|
new ("SemiColorTertiaryLight", "Tertiary Light"),
|
||||||
new ("SemiColorTertiaryLightPointerover", "Tertiary Light Pointerover"),
|
new ("SemiColorTertiaryLightPointerover", "Tertiary Light Pointerover"),
|
||||||
new ("SemiColorTertiaryLightActive", "Tertiary Light Active"),
|
new ("SemiColorTertiaryLightActive", "Tertiary Light Active"),
|
||||||
@@ -283,7 +283,7 @@ public static class ColorTokens
|
|||||||
{
|
{
|
||||||
new ("SemiColorInformation", "Information"),
|
new ("SemiColorInformation", "Information"),
|
||||||
new ("SemiColorInformationPointerover", "Information Pointerover"),
|
new ("SemiColorInformationPointerover", "Information Pointerover"),
|
||||||
new ("SemiColorInformationPressed", "Information Pressed"),
|
new ("SemiColorInformationActive", "Information Active"),
|
||||||
new ("SemiColorInformationDisabled", "Information Disabled"),
|
new ("SemiColorInformationDisabled", "Information Disabled"),
|
||||||
new ("SemiColorInformationLight", "Information Light"),
|
new ("SemiColorInformationLight", "Information Light"),
|
||||||
new ("SemiColorInformationLightPointerover", "Information Light Pointerover"),
|
new ("SemiColorInformationLightPointerover", "Information Light Pointerover"),
|
||||||
@@ -294,7 +294,7 @@ public static class ColorTokens
|
|||||||
{
|
{
|
||||||
new ("SemiColorSuccess", "Success"),
|
new ("SemiColorSuccess", "Success"),
|
||||||
new ("SemiColorSuccessPointerover", "Success Pointerover"),
|
new ("SemiColorSuccessPointerover", "Success Pointerover"),
|
||||||
new ("SemiColorSuccessPressed", "Success Pressed"),
|
new ("SemiColorSuccessActive", "Success Active"),
|
||||||
new ("SemiColorSuccessDisabled", "Success Disabled"),
|
new ("SemiColorSuccessDisabled", "Success Disabled"),
|
||||||
new ("SemiColorSuccessLight", "Success Light"),
|
new ("SemiColorSuccessLight", "Success Light"),
|
||||||
new ("SemiColorSuccessLightPointerover", "Success Light Pointerover"),
|
new ("SemiColorSuccessLightPointerover", "Success Light Pointerover"),
|
||||||
@@ -305,7 +305,7 @@ public static class ColorTokens
|
|||||||
{
|
{
|
||||||
new ("SemiColorWarning", "Warning"),
|
new ("SemiColorWarning", "Warning"),
|
||||||
new ("SemiColorWarningPointerover", "Warning Pointerover"),
|
new ("SemiColorWarningPointerover", "Warning Pointerover"),
|
||||||
new ("SemiColorWarningPressed", "Warning Pressed"),
|
new ("SemiColorWarningActive", "Warning Active"),
|
||||||
new ("SemiColorWarningLight", "Warning Light"),
|
new ("SemiColorWarningLight", "Warning Light"),
|
||||||
new ("SemiColorWarningLightPointerover", "Warning Light Pointerover"),
|
new ("SemiColorWarningLightPointerover", "Warning Light Pointerover"),
|
||||||
new ("SemiColorWarningLightActive", "Warning Light Active"),
|
new ("SemiColorWarningLightActive", "Warning Light Active"),
|
||||||
@@ -315,7 +315,7 @@ public static class ColorTokens
|
|||||||
{
|
{
|
||||||
new ("SemiColorDanger", "Danger"),
|
new ("SemiColorDanger", "Danger"),
|
||||||
new ("SemiColorDangerPointerover", "Danger Pointerover"),
|
new ("SemiColorDangerPointerover", "Danger Pointerover"),
|
||||||
new ("SemiColorDangerPressed", "Danger Pressed"),
|
new ("SemiColorDangerActive", "Danger Active"),
|
||||||
new ("SemiColorDangerLight", "Danger Light"),
|
new ("SemiColorDangerLight", "Danger Light"),
|
||||||
new ("SemiColorDangerLightPointerover", "Danger Light Pointerover"),
|
new ("SemiColorDangerLightPointerover", "Danger Light Pointerover"),
|
||||||
new ("SemiColorDangerLightActive", "Danger Light Active"),
|
new ("SemiColorDangerLightActive", "Danger Light Active"),
|
||||||
|
|||||||
@@ -38,26 +38,42 @@
|
|||||||
Classes="Secondary"
|
Classes="Secondary"
|
||||||
Text="{Binding #tab.SelectedItem.Header}" />
|
Text="{Binding #tab.SelectedItem.Header}" />
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
<ToggleSwitch
|
<StackPanel Grid.Column="1" Orientation="Horizontal">
|
||||||
Grid.Column="1"
|
<Button Theme="{DynamicResource BorderlessButton}" Click="OpenDocumentation">
|
||||||
Padding="4"
|
|
||||||
IsCheckedChanged="ToggleButton_OnIsCheckedChanged"
|
|
||||||
Theme="{DynamicResource ButtonToggleSwitch}">
|
|
||||||
<ToggleSwitch.OnContent>
|
|
||||||
<PathIcon
|
<PathIcon
|
||||||
Width="16"
|
Width="16"
|
||||||
Height="16"
|
Height="16"
|
||||||
Data="M12 23C18.0751 23 23 18.0751 23 12C23 5.92487 18.0751 1 12 1C5.92487 1 1 5.92487 1 12C1 18.0751 5.92487 23 12 23ZM17 15C17.476 15 17.9408 14.9525 18.3901 14.862C17.296 17.3011 14.8464 19 12 19C8.13401 19 5 15.866 5 12C5 8.60996 7.40983 5.78277 10.6099 5.13803C10.218 6.01173 10 6.98041 10 8C10 11.866 13.134 15 17 15Z"
|
Data="M12 21.5C10.65 20.65 8.2 20 6.5 20C4.85 20 3.15 20.3 1.75 21.05C1.65 21.1 1.6 21.1 1.5 21.1C1.25 21.1 1 20.85 1 20.6V6C1.6 5.55 2.25 5.25 3 5C4.11 4.65 5.33 4.5 6.5 4.5C8.45 4.5 10.55 4.9 12 6C13.45 4.9 15.55 4.5 17.5 4.5C18.67 4.5 19.89 4.65 21 5C21.75 5.25 22.4 5.55 23 6V20.6C23 20.85 22.75 21.1 22.5 21.1C22.4 21.1 22.35 21.1 22.25 21.05C20.85 20.3 19.15 20 17.5 20C15.8 20 13.35 20.65 12 21.5M12 8V19.5C13.35 18.65 15.8 18 17.5 18C18.7 18 19.9 18.15 21 18.5V7C19.9 6.65 18.7 6.5 17.5 6.5C15.8 6.5 13.35 7.15 12 8M13 11.5C14.11 10.82 15.6 10.5 17.5 10.5C18.41 10.5 19.26 10.59 20 10.78V9.23C19.13 9.08 18.29 9 17.5 9C15.73 9 14.23 9.28 13 9.84V11.5M17.5 11.67C15.79 11.67 14.29 11.93 13 12.46V14.15C14.11 13.5 15.6 13.16 17.5 13.16C18.54 13.16 19.38 13.24 20 13.4V11.9C19.13 11.74 18.29 11.67 17.5 11.67M20 14.57C19.13 14.41 18.29 14.33 17.5 14.33C15.67 14.33 14.17 14.6 13 15.13V16.82C14.11 16.16 15.6 15.83 17.5 15.83C18.54 15.83 19.38 15.91 20 16.07V14.57Z"
|
||||||
Foreground="{DynamicResource ButtonDefaultTertiaryForeground}" />
|
Foreground="{DynamicResource ButtonDefaultTertiaryForeground}" />
|
||||||
</ToggleSwitch.OnContent>
|
</Button>
|
||||||
<ToggleSwitch.OffContent>
|
<Button Theme="{DynamicResource BorderlessButton}" Click="OpenRepository">
|
||||||
<PathIcon
|
<PathIcon
|
||||||
Width="16"
|
Width="16"
|
||||||
Height="16"
|
Height="16"
|
||||||
Data="M3.55 19.09L4.96 20.5L6.76 18.71L5.34 17.29M12 6C8.69 6 6 8.69 6 12S8.69 18 12 18 18 15.31 18 12C18 8.68 15.31 6 12 6M20 13H23V11H20M17.24 18.71L19.04 20.5L20.45 19.09L18.66 17.29M20.45 5L19.04 3.6L17.24 5.39L18.66 6.81M13 1H11V4H13M6.76 5.39L4.96 3.6L3.55 5L5.34 6.81L6.76 5.39M1 13H4V11H1M13 20H11V23H13"
|
Data="M12,2A10,10 0 0,0 2,12C2,16.42 4.87,20.17 8.84,21.5C9.34,21.58 9.5,21.27 9.5,21C9.5,20.77 9.5,20.14 9.5,19.31C6.73,19.91 6.14,17.97 6.14,17.97C5.68,16.81 5.03,16.5 5.03,16.5C4.12,15.88 5.1,15.9 5.1,15.9C6.1,15.97 6.63,16.93 6.63,16.93C7.5,18.45 8.97,18 9.54,17.76C9.63,17.11 9.89,16.67 10.17,16.42C7.95,16.17 5.62,15.31 5.62,11.5C5.62,10.39 6,9.5 6.65,8.79C6.55,8.54 6.2,7.5 6.75,6.15C6.75,6.15 7.59,5.88 9.5,7.17C10.29,6.95 11.15,6.84 12,6.84C12.85,6.84 13.71,6.95 14.5,7.17C16.41,5.88 17.25,6.15 17.25,6.15C17.8,7.5 17.45,8.54 17.35,8.79C18,9.5 18.38,10.39 18.38,11.5C18.38,15.32 16.04,16.16 13.81,16.41C14.17,16.72 14.5,17.33 14.5,18.26C14.5,19.6 14.5,20.68 14.5,21C14.5,21.27 14.66,21.59 15.17,21.5C19.14,20.16 22,16.42 22,12A10,10 0 0,0 12,2Z"
|
||||||
Foreground="{DynamicResource ButtonDefaultTertiaryForeground}" />
|
Foreground="{DynamicResource ButtonDefaultTertiaryForeground}" />
|
||||||
</ToggleSwitch.OffContent>
|
</Button>
|
||||||
</ToggleSwitch>
|
<ToggleSwitch
|
||||||
|
Grid.Column="1"
|
||||||
|
Padding="4"
|
||||||
|
IsCheckedChanged="ToggleButton_OnIsCheckedChanged"
|
||||||
|
Theme="{DynamicResource ButtonToggleSwitch}">
|
||||||
|
<ToggleSwitch.OnContent>
|
||||||
|
<PathIcon
|
||||||
|
Width="16"
|
||||||
|
Height="16"
|
||||||
|
Data="M12 23C18.0751 23 23 18.0751 23 12C23 5.92487 18.0751 1 12 1C5.92487 1 1 5.92487 1 12C1 18.0751 5.92487 23 12 23ZM17 15C17.476 15 17.9408 14.9525 18.3901 14.862C17.296 17.3011 14.8464 19 12 19C8.13401 19 5 15.866 5 12C5 8.60996 7.40983 5.78277 10.6099 5.13803C10.218 6.01173 10 6.98041 10 8C10 11.866 13.134 15 17 15Z"
|
||||||
|
Foreground="{DynamicResource ButtonDefaultTertiaryForeground}" />
|
||||||
|
</ToggleSwitch.OnContent>
|
||||||
|
<ToggleSwitch.OffContent>
|
||||||
|
<PathIcon
|
||||||
|
Width="16"
|
||||||
|
Height="16"
|
||||||
|
Data="M3.55 19.09L4.96 20.5L6.76 18.71L5.34 17.29M12 6C8.69 6 6 8.69 6 12S8.69 18 12 18 18 15.31 18 12C18 8.68 15.31 6 12 6M20 13H23V11H20M17.24 18.71L19.04 20.5L20.45 19.09L18.66 17.29M20.45 5L19.04 3.6L17.24 5.39L18.66 6.81M13 1H11V4H13M6.76 5.39L4.96 3.6L3.55 5L5.34 6.81L6.76 5.39M1 13H4V11H1M13 20H11V23H13"
|
||||||
|
Foreground="{DynamicResource ButtonDefaultTertiaryForeground}" />
|
||||||
|
</ToggleSwitch.OffContent>
|
||||||
|
</ToggleSwitch>
|
||||||
|
</StackPanel>
|
||||||
</Grid>
|
</Grid>
|
||||||
|
|
||||||
</Border>
|
</Border>
|
||||||
@@ -126,6 +142,9 @@
|
|||||||
<TabItem Header="HeaderedContentControl">
|
<TabItem Header="HeaderedContentControl">
|
||||||
<pages:HeaderedContentControlDemo />
|
<pages:HeaderedContentControlDemo />
|
||||||
</TabItem>
|
</TabItem>
|
||||||
|
<TabItem Header="HyperlinkButton">
|
||||||
|
<pages:HyperlinkButtonDemo />
|
||||||
|
</TabItem>
|
||||||
<TabItem Header="Label">
|
<TabItem Header="Label">
|
||||||
<pages:LabelDemo />
|
<pages:LabelDemo />
|
||||||
</TabItem>
|
</TabItem>
|
||||||
@@ -145,7 +164,7 @@
|
|||||||
<pages:NumericUpDownDemo />
|
<pages:NumericUpDownDemo />
|
||||||
</TabItem>
|
</TabItem>
|
||||||
<TabItem Header="PathIcon">
|
<TabItem Header="PathIcon">
|
||||||
<pages:PathIconDemo/>
|
<pages:PathIconDemo />
|
||||||
</TabItem>
|
</TabItem>
|
||||||
<TabItem Header="ProgressBar">
|
<TabItem Header="ProgressBar">
|
||||||
<pages:ProgressBarDemo />
|
<pages:ProgressBarDemo />
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
using System;
|
||||||
using Avalonia;
|
using Avalonia;
|
||||||
using Avalonia.Controls;
|
using Avalonia.Controls;
|
||||||
using Avalonia.Interactivity;
|
using Avalonia.Interactivity;
|
||||||
@@ -21,4 +22,20 @@ public partial class MainView : UserControl
|
|||||||
app.RequestedThemeVariant = theme == ThemeVariant.Dark ? ThemeVariant.Light : ThemeVariant.Dark;
|
app.RequestedThemeVariant = theme == ThemeVariant.Dark ? ThemeVariant.Light : ThemeVariant.Dark;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private async void OpenRepository(object sender, RoutedEventArgs e)
|
||||||
|
{
|
||||||
|
var top = TopLevel.GetTopLevel(this);
|
||||||
|
if (top is null) return;
|
||||||
|
var launcher = top.Launcher;
|
||||||
|
await launcher.LaunchUriAsync(new Uri("https://github.com/irihitech/Semi.Avalonia"));
|
||||||
|
}
|
||||||
|
|
||||||
|
private async void OpenDocumentation(object sender, RoutedEventArgs e)
|
||||||
|
{
|
||||||
|
var top = TopLevel.GetTopLevel(this);
|
||||||
|
if (top is null) return;
|
||||||
|
var launcher = top.Launcher;
|
||||||
|
await launcher.LaunchUriAsync(new Uri("https://docs.irihi.tech/semi"));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"sdk": {
|
"sdk": {
|
||||||
"version": "7.0"
|
"version": "8.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
BIN
docs/community-support.png
Normal file
|
After Width: | Height: | Size: 168 KiB |
BIN
docs/demo.jpg
Normal file
|
After Width: | Height: | Size: 104 KiB |
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"sdk": {
|
"sdk": {
|
||||||
"version": "7.0.0",
|
"version": "8.0.0",
|
||||||
"rollForward": "latestMajor",
|
"rollForward": "latestMajor",
|
||||||
"allowPrerelease": true
|
"allowPrerelease": true
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,13 +1,19 @@
|
|||||||
<Project>
|
<Project>
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFrameworks>net6.0;netstandard2.0</TargetFrameworks>
|
<TargetFrameworks>net6.0;net8.0;netstandard2.0</TargetFrameworks>
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
<LangVersion>11</LangVersion>
|
<LangVersion>latest</LangVersion>
|
||||||
<Version>11.0.7</Version>
|
<Version>11.1.0-rc2.1</Version>
|
||||||
<Authors>IRIHI Technology</Authors>
|
<Authors>IRIHI Technology Co., Ltd.</Authors>
|
||||||
<Description>Avalonia Theme inspired by Semi Design.</Description>
|
<Description>Avalonia Theme inspired by Semi Design.</Description>
|
||||||
<PackageProjectUrl>https://github.com/irihitech/Semi.Avalonia</PackageProjectUrl>
|
<RepositoryUrl>https://github.com/irihitech/Semi.Avalonia</RepositoryUrl>
|
||||||
<AvaloniaVersion>11.0.7</AvaloniaVersion>
|
|
||||||
<PackageLicenseExpression>MIT</PackageLicenseExpression>
|
<PackageLicenseExpression>MIT</PackageLicenseExpression>
|
||||||
|
<PackageIcon>irihi.png</PackageIcon>
|
||||||
|
<PackageProjectUrl>https://github.com/irihitech/Semi.Avalonia</PackageProjectUrl>
|
||||||
|
<AvaloniaVersion>11.1.0-rc2</AvaloniaVersion>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="irihi.png" Pack="true" PackagePath=""/>
|
||||||
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
@@ -17,10 +17,33 @@
|
|||||||
<converters:ToBrushConverter x:Key="ToBrushConverter" />
|
<converters:ToBrushConverter x:Key="ToBrushConverter" />
|
||||||
|
|
||||||
<ControlTheme x:Key="{x:Type ColorPicker}" TargetType="ColorPicker">
|
<ControlTheme x:Key="{x:Type ColorPicker}" TargetType="ColorPicker">
|
||||||
<Setter Property="CornerRadius" Value="{DynamicResource ControlCornerRadius}" />
|
<Setter Property="CornerRadius" Value="3" />
|
||||||
<Setter Property="Height" Value="32" />
|
<Setter Property="Height" Value="32" />
|
||||||
<Setter Property="Width" Value="64" />
|
<Setter Property="Width" Value="64" />
|
||||||
<Setter Property="MinWidth" Value="64" />
|
<Setter Property="MinWidth" Value="64" />
|
||||||
|
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
|
||||||
|
<Setter Property="VerticalContentAlignment" Value="Stretch" />
|
||||||
|
<Setter Property="Content">
|
||||||
|
<Template>
|
||||||
|
<Panel>
|
||||||
|
<Border
|
||||||
|
Margin="1,1,0,1"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
|
VerticalAlignment="Stretch"
|
||||||
|
Background="{DynamicResource ColorControlCheckeredBackgroundBrush}"
|
||||||
|
CornerRadius="{TemplateBinding CornerRadius,
|
||||||
|
Converter={StaticResource LeftCornerRadiusFilterConverter}}" />
|
||||||
|
<Border
|
||||||
|
Margin="1,1,0,1"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
|
VerticalAlignment="Stretch"
|
||||||
|
Background="{TemplateBinding HsvColor,
|
||||||
|
Converter={StaticResource ToBrushConverter}}"
|
||||||
|
CornerRadius="{TemplateBinding CornerRadius,
|
||||||
|
Converter={StaticResource LeftCornerRadiusFilterConverter}}" />
|
||||||
|
</Panel>
|
||||||
|
</Template>
|
||||||
|
</Setter>
|
||||||
<Setter Property="Palette">
|
<Setter Property="Palette">
|
||||||
<controls:FluentColorPalette />
|
<controls:FluentColorPalette />
|
||||||
</Setter>
|
</Setter>
|
||||||
@@ -33,6 +56,8 @@
|
|||||||
HorizontalContentAlignment="Stretch"
|
HorizontalContentAlignment="Stretch"
|
||||||
VerticalContentAlignment="Stretch"
|
VerticalContentAlignment="Stretch"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
|
Content="{TemplateBinding Content}"
|
||||||
|
ContentTemplate="{TemplateBinding ContentTemplate}"
|
||||||
CornerRadius="{TemplateBinding CornerRadius}"
|
CornerRadius="{TemplateBinding CornerRadius}"
|
||||||
UseLayoutRounding="False">
|
UseLayoutRounding="False">
|
||||||
<DropDownButton.Styles>
|
<DropDownButton.Styles>
|
||||||
@@ -40,26 +65,6 @@
|
|||||||
<Setter Property="Padding" Value="0" />
|
<Setter Property="Padding" Value="0" />
|
||||||
</Style>
|
</Style>
|
||||||
</DropDownButton.Styles>
|
</DropDownButton.Styles>
|
||||||
<DropDownButton.Content>
|
|
||||||
<!-- Preview color -->
|
|
||||||
<Panel>
|
|
||||||
<Border
|
|
||||||
Margin="1,1,0,1"
|
|
||||||
HorizontalAlignment="Stretch"
|
|
||||||
VerticalAlignment="Stretch"
|
|
||||||
Background="{DynamicResource ColorControlCheckeredBackgroundBrush}"
|
|
||||||
CornerRadius="{TemplateBinding CornerRadius,
|
|
||||||
Converter={StaticResource LeftCornerRadiusFilterConverter}}" />
|
|
||||||
<Border
|
|
||||||
Margin="1,1,0,1"
|
|
||||||
HorizontalAlignment="Stretch"
|
|
||||||
VerticalAlignment="Stretch"
|
|
||||||
Background="{TemplateBinding HsvColor,
|
|
||||||
Converter={StaticResource ToBrushConverter}}"
|
|
||||||
CornerRadius="{TemplateBinding CornerRadius,
|
|
||||||
Converter={StaticResource LeftCornerRadiusFilterConverter}}" />
|
|
||||||
</Panel>
|
|
||||||
</DropDownButton.Content>
|
|
||||||
<DropDownButton.Flyout>
|
<DropDownButton.Flyout>
|
||||||
<Flyout FlyoutPresenterClasses="nopadding" Placement="{DynamicResource ColorPickerFlyoutPlacement}">
|
<Flyout FlyoutPresenterClasses="nopadding" Placement="{DynamicResource ColorPickerFlyoutPlacement}">
|
||||||
|
|
||||||
@@ -167,7 +172,7 @@
|
|||||||
Orientation="Vertical">
|
Orientation="Vertical">
|
||||||
<primitives:ColorSlider.IsVisible>
|
<primitives:ColorSlider.IsVisible>
|
||||||
<MultiBinding Converter="{x:Static BoolConverters.And}">
|
<MultiBinding Converter="{x:Static BoolConverters.And}">
|
||||||
<ReflectionBinding Path="IsAlphaVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="IsAlphaVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
</MultiBinding>
|
</MultiBinding>
|
||||||
</primitives:ColorSlider.IsVisible>
|
</primitives:ColorSlider.IsVisible>
|
||||||
</primitives:ColorSlider>
|
</primitives:ColorSlider>
|
||||||
@@ -425,8 +430,8 @@
|
|||||||
Value="{Binding Value, ElementName=AlphaComponentSlider}">
|
Value="{Binding Value, ElementName=AlphaComponentSlider}">
|
||||||
<NumericUpDown.IsVisible>
|
<NumericUpDown.IsVisible>
|
||||||
<MultiBinding Converter="{x:Static BoolConverters.And}">
|
<MultiBinding Converter="{x:Static BoolConverters.And}">
|
||||||
<ReflectionBinding Path="IsAlphaVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="IsAlphaVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
<ReflectionBinding Path="IsComponentTextInputVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="IsComponentTextInputVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
</MultiBinding>
|
</MultiBinding>
|
||||||
</NumericUpDown.IsVisible>
|
</NumericUpDown.IsVisible>
|
||||||
</NumericUpDown>
|
</NumericUpDown>
|
||||||
@@ -447,8 +452,8 @@
|
|||||||
TickFrequency="1">
|
TickFrequency="1">
|
||||||
<primitives:ColorSlider.IsVisible>
|
<primitives:ColorSlider.IsVisible>
|
||||||
<MultiBinding Converter="{x:Static BoolConverters.And}">
|
<MultiBinding Converter="{x:Static BoolConverters.And}">
|
||||||
<ReflectionBinding Path="IsAlphaVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="IsAlphaVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
<ReflectionBinding Path="IsComponentSliderVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="IsComponentSliderVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
</MultiBinding>
|
</MultiBinding>
|
||||||
</primitives:ColorSlider.IsVisible>
|
</primitives:ColorSlider.IsVisible>
|
||||||
</primitives:ColorSlider>
|
</primitives:ColorSlider>
|
||||||
@@ -471,4 +476,42 @@
|
|||||||
</Setter>
|
</Setter>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme
|
||||||
|
x:Key="HexColorPicker"
|
||||||
|
BasedOn="{StaticResource {x:Type ColorPicker}}"
|
||||||
|
TargetType="ColorPicker">
|
||||||
|
<Setter Property="Width" Value="200" />
|
||||||
|
<Setter Property="Content">
|
||||||
|
<Template>
|
||||||
|
<Grid ColumnDefinitions="Auto, *">
|
||||||
|
<Border
|
||||||
|
Grid.Column="0"
|
||||||
|
Width="{Binding $self.Bounds.Height}"
|
||||||
|
Margin="1,1,0,1"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
|
VerticalAlignment="Stretch"
|
||||||
|
Background="{DynamicResource ColorControlCheckeredBackgroundBrush}"
|
||||||
|
CornerRadius="{TemplateBinding CornerRadius}" />
|
||||||
|
<Border
|
||||||
|
Grid.Column="0"
|
||||||
|
Width="{Binding $self.Bounds.Height}"
|
||||||
|
Margin="1,1,0,1"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
|
VerticalAlignment="Stretch"
|
||||||
|
Background="{TemplateBinding HsvColor,
|
||||||
|
Converter={StaticResource ToBrushConverter}}"
|
||||||
|
CornerRadius="{TemplateBinding CornerRadius}" />
|
||||||
|
<TextBlock
|
||||||
|
Grid.Column="1"
|
||||||
|
Margin="8,0,0,0"
|
||||||
|
HorizontalAlignment="Left"
|
||||||
|
VerticalAlignment="Center"
|
||||||
|
FontWeight="Regular"
|
||||||
|
Foreground="{DynamicResource TextBlockDefaultForeground}"
|
||||||
|
Text="{Binding $parent[ColorPicker].Color}" />
|
||||||
|
</Grid>
|
||||||
|
</Template>
|
||||||
|
</Setter>
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|||||||
@@ -260,7 +260,7 @@
|
|||||||
Orientation="Vertical">
|
Orientation="Vertical">
|
||||||
<primitives:ColorSlider.IsVisible>
|
<primitives:ColorSlider.IsVisible>
|
||||||
<MultiBinding Converter="{x:Static BoolConverters.And}">
|
<MultiBinding Converter="{x:Static BoolConverters.And}">
|
||||||
<ReflectionBinding Path="IsAlphaVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="IsAlphaVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
</MultiBinding>
|
</MultiBinding>
|
||||||
</primitives:ColorSlider.IsVisible>
|
</primitives:ColorSlider.IsVisible>
|
||||||
</primitives:ColorSlider>
|
</primitives:ColorSlider>
|
||||||
@@ -490,8 +490,8 @@
|
|||||||
Value="{Binding Value, ElementName=AlphaComponentSlider}">
|
Value="{Binding Value, ElementName=AlphaComponentSlider}">
|
||||||
<NumericUpDown.IsVisible>
|
<NumericUpDown.IsVisible>
|
||||||
<MultiBinding Converter="{x:Static BoolConverters.And}">
|
<MultiBinding Converter="{x:Static BoolConverters.And}">
|
||||||
<ReflectionBinding Path="IsAlphaVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="IsAlphaVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
<ReflectionBinding Path="IsComponentTextInputVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="IsComponentTextInputVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
</MultiBinding>
|
</MultiBinding>
|
||||||
</NumericUpDown.IsVisible>
|
</NumericUpDown.IsVisible>
|
||||||
</NumericUpDown>
|
</NumericUpDown>
|
||||||
@@ -512,8 +512,8 @@
|
|||||||
TickFrequency="1">
|
TickFrequency="1">
|
||||||
<primitives:ColorSlider.IsVisible>
|
<primitives:ColorSlider.IsVisible>
|
||||||
<MultiBinding Converter="{x:Static BoolConverters.And}">
|
<MultiBinding Converter="{x:Static BoolConverters.And}">
|
||||||
<ReflectionBinding Path="IsAlphaVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="IsAlphaVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
<ReflectionBinding Path="IsComponentSliderVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="IsComponentSliderVisible" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
</MultiBinding>
|
</MultiBinding>
|
||||||
</primitives:ColorSlider.IsVisible>
|
</primitives:ColorSlider.IsVisible>
|
||||||
</primitives:ColorSlider>
|
</primitives:ColorSlider>
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
<Styles.Resources>
|
<Styles.Resources>
|
||||||
<ResourceDictionary>
|
<ResourceDictionary>
|
||||||
<ResourceDictionary.ThemeDictionaries>
|
<ResourceDictionary.ThemeDictionaries>
|
||||||
<MergeResourceInclude x:Key="Default" Source="avares://Semi.Avalonia.ColorPicker/Light.axaml" />
|
<ResourceInclude x:Key="Default" Source="avares://Semi.Avalonia.ColorPicker/Light.axaml" />
|
||||||
<MergeResourceInclude x:Key="Dark" Source="avares://Semi.Avalonia.ColorPicker/Dark.axaml" />
|
<ResourceInclude x:Key="Dark" Source="avares://Semi.Avalonia.ColorPicker/Dark.axaml" />
|
||||||
</ResourceDictionary.ThemeDictionaries>
|
</ResourceDictionary.ThemeDictionaries>
|
||||||
<ResourceDictionary.MergedDictionaries>
|
<ResourceDictionary.MergedDictionaries>
|
||||||
<ResourceInclude Source="avares://Semi.Avalonia.ColorPicker/Controls/ColorPicker.axaml" />
|
<ResourceInclude Source="avares://Semi.Avalonia.ColorPicker/Controls/ColorPicker.axaml" />
|
||||||
|
|||||||
@@ -4,7 +4,11 @@
|
|||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<Title>Semi.Avalonia.ColorPicker</Title>
|
<Title>Semi.Avalonia.ColorPicker</Title>
|
||||||
<PackageReleaseNotes>Update to 11.0.7</PackageReleaseNotes>
|
<PackageReleaseNotes>Update to Avalonia 11.1-rc2</PackageReleaseNotes>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<PropertyGroup Condition="$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net8.0'))">
|
||||||
|
<IsAotCompatible>true</IsAotCompatible>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|||||||
BIN
src/Semi.Avalonia.ColorPicker/irihi.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
@@ -9,7 +9,6 @@
|
|||||||
|
|
||||||
<SolidColorBrush x:Key="DataGridColumnHeaderForeground" Opacity="0.6" Color="#F9F9F9" />
|
<SolidColorBrush x:Key="DataGridColumnHeaderForeground" Opacity="0.6" Color="#F9F9F9" />
|
||||||
<SolidColorBrush x:Key="DataGridColumnHeaderBackground" Color="Transparent" />
|
<SolidColorBrush x:Key="DataGridColumnHeaderBackground" Color="Transparent" />
|
||||||
|
|
||||||
<SolidColorBrush x:Key="DataGridColumnHeaderPointeroverBackground" Opacity="0.16" Color="White" />
|
<SolidColorBrush x:Key="DataGridColumnHeaderPointeroverBackground" Opacity="0.16" Color="White" />
|
||||||
<SolidColorBrush x:Key="DataGridColumnHeaderPressedBackground" Opacity="0.20" Color="White" />
|
<SolidColorBrush x:Key="DataGridColumnHeaderPressedBackground" Opacity="0.20" Color="White" />
|
||||||
|
|
||||||
|
|||||||
@@ -292,7 +292,7 @@
|
|||||||
Name="BackgroundBorder"
|
Name="BackgroundBorder"
|
||||||
Grid.RowSpan="2"
|
Grid.RowSpan="2"
|
||||||
Grid.ColumnSpan="2"
|
Grid.ColumnSpan="2"
|
||||||
Margin="2"
|
Margin="{DynamicResource DataGridRowMargin}"
|
||||||
Background="{DynamicResource DataGridRowBackground}"
|
Background="{DynamicResource DataGridRowBackground}"
|
||||||
CornerRadius="3" />
|
CornerRadius="3" />
|
||||||
<Rectangle
|
<Rectangle
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
<Styles.Resources>
|
<Styles.Resources>
|
||||||
<ResourceDictionary>
|
<ResourceDictionary>
|
||||||
<ResourceDictionary.ThemeDictionaries>
|
<ResourceDictionary.ThemeDictionaries>
|
||||||
<MergeResourceInclude x:Key="Default" Source="avares://Semi.Avalonia.DataGrid/Light.axaml" />
|
<ResourceInclude x:Key="Default" Source="avares://Semi.Avalonia.DataGrid/Light.axaml" />
|
||||||
<MergeResourceInclude x:Key="Dark" Source="avares://Semi.Avalonia.DataGrid/Dark.axaml" />
|
<ResourceInclude x:Key="Dark" Source="avares://Semi.Avalonia.DataGrid/Dark.axaml" />
|
||||||
</ResourceDictionary.ThemeDictionaries>
|
</ResourceDictionary.ThemeDictionaries>
|
||||||
<ResourceDictionary.MergedDictionaries>
|
<ResourceDictionary.MergedDictionaries>
|
||||||
<ResourceInclude Source="avares://Semi.Avalonia.DataGrid/DataGrid.axaml" />
|
<ResourceInclude Source="avares://Semi.Avalonia.DataGrid/DataGrid.axaml" />
|
||||||
|
|||||||
@@ -18,9 +18,8 @@
|
|||||||
<SolidColorBrush x:Key="DataGridDetailsPresenterBackground" Color="Transparent" />
|
<SolidColorBrush x:Key="DataGridDetailsPresenterBackground" Color="Transparent" />
|
||||||
|
|
||||||
<SolidColorBrush x:Key="DataGridRowPointeroverBackground" Opacity="0.09" Color="#2E3238" />
|
<SolidColorBrush x:Key="DataGridRowPointeroverBackground" Opacity="0.09" Color="#2E3238" />
|
||||||
<SolidColorBrush x:Key="DataGridRowSelectedBackground" Color="#EAF5FF" />
|
<SolidColorBrush x:Key="DataGridRowSelectedBackground" Opacity="0.2" Color="#EAF5FF" />
|
||||||
<SolidColorBrush x:Key="DataGridRowSelectedPointeroverBackground" Color="#CBE7FE" />
|
<SolidColorBrush x:Key="DataGridRowSelectedPointeroverBackground" Opacity="0.3" Color="#CBE7FE" />
|
||||||
|
|
||||||
<SolidColorBrush x:Key="DataGridRowGroupHeaderExpandIconForeground" Opacity="0.62" Color="#1C1F23" />
|
<SolidColorBrush x:Key="DataGridRowGroupHeaderExpandIconForeground" Opacity="0.62" Color="#1C1F23" />
|
||||||
<SolidColorBrush x:Key="DataGridRowGroupHeaderBackground" Opacity="0.05" Color="#2E3238" />
|
<SolidColorBrush x:Key="DataGridRowGroupHeaderBackground" Opacity="0.05" Color="#2E3238" />
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,11 @@
|
|||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<Title>Semi.Avalonia.DataGrid</Title>
|
<Title>Semi.Avalonia.DataGrid</Title>
|
||||||
<PackageReleaseNotes>Update to 11.0.7</PackageReleaseNotes>
|
<PackageReleaseNotes>Update to Avalonia 11.1-rc2</PackageReleaseNotes>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<PropertyGroup Condition="$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net8.0'))">
|
||||||
|
<IsAotCompatible>true</IsAotCompatible>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|||||||
@@ -12,6 +12,7 @@
|
|||||||
<StreamGeometry x:Key="DataGridColumnHeaderDescendingGlyph">M17.549 15.659L12.753 21.139C12.6591 21.2464 12.5434 21.3325 12.4135 21.3915C12.2836 21.4505 12.1427 21.481 12 21.481C11.8574 21.481 11.7164 21.4505 11.5865 21.3915C11.4566 21.3325 11.3409 21.2464 11.247 21.139L6.45101 15.659C5.88501 15.011 6.34501 14 7.20401 14H16.796C17.656 14 18.115 15.012 17.549 15.659Z</StreamGeometry>
|
<StreamGeometry x:Key="DataGridColumnHeaderDescendingGlyph">M17.549 15.659L12.753 21.139C12.6591 21.2464 12.5434 21.3325 12.4135 21.3915C12.2836 21.4505 12.1427 21.481 12 21.481C11.8574 21.481 11.7164 21.4505 11.5865 21.3915C11.4566 21.3325 11.3409 21.2464 11.247 21.139L6.45101 15.659C5.88501 15.011 6.34501 14 7.20401 14H16.796C17.656 14 18.115 15.012 17.549 15.659Z</StreamGeometry>
|
||||||
|
|
||||||
<Thickness x:Key="DataGridRowHeaderMargin">8 0</Thickness>
|
<Thickness x:Key="DataGridRowHeaderMargin">8 0</Thickness>
|
||||||
|
<Thickness x:Key="DataGridRowMargin">2</Thickness>
|
||||||
|
|
||||||
<StreamGeometry x:Key="DataGridRowGroupHeaderExpandIconGlyph">M7.43934 19.7957C6.85355 19.2099 6.85355 18.2601 7.43934 17.6744L13.0962 12.0175L7.43934 6.36065C6.85355 5.77486 6.85355 4.82511 7.43934 4.23933C8.02513 3.65354 8.97487 3.65354 9.56066 4.23933L16.2782 10.9568C16.864 11.5426 16.864 12.4924 16.2782 13.0782L9.56066 19.7957C8.97487 20.3815 8.02513 20.3815 7.43934 19.7957Z</StreamGeometry>
|
<StreamGeometry x:Key="DataGridRowGroupHeaderExpandIconGlyph">M7.43934 19.7957C6.85355 19.2099 6.85355 18.2601 7.43934 17.6744L13.0962 12.0175L7.43934 6.36065C6.85355 5.77486 6.85355 4.82511 7.43934 4.23933C8.02513 3.65354 8.97487 3.65354 9.56066 4.23933L16.2782 10.9568C16.864 11.5426 16.864 12.4924 16.2782 13.0782L9.56066 19.7957C8.97487 20.3815 8.02513 20.3815 7.43934 19.7957Z</StreamGeometry>
|
||||||
|
|
||||||
|
|||||||
BIN
src/Semi.Avalonia.DataGrid/irihi.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
@@ -3,17 +3,24 @@
|
|||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>net6.0</TargetFramework>
|
<TargetFramework>net6.0</TargetFramework>
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
<LangVersion>11</LangVersion>
|
<LangVersion>latest</LangVersion>
|
||||||
<Version>11.0.1</Version>
|
<PackageReleaseNotes>Update to Avalonia 11.1-rc1</PackageReleaseNotes>
|
||||||
<Authors>IRIHI Technology</Authors>
|
<Authors>IRIHI Technology Co., Ltd.</Authors>
|
||||||
<Description>Avalonia Theme inspired by Semi Design.</Description>
|
<Description>Avalonia Theme inspired by Semi Design.</Description>
|
||||||
|
<RepositoryUrl>https://github.com/irihitech/Semi.Avalonia</RepositoryUrl>
|
||||||
|
<PackageLicenseExpression>MIT</PackageLicenseExpression>
|
||||||
|
<PackageIcon>irihi.png</PackageIcon>
|
||||||
<PackageProjectUrl>https://github.com/irihitech/Semi.Avalonia</PackageProjectUrl>
|
<PackageProjectUrl>https://github.com/irihitech/Semi.Avalonia</PackageProjectUrl>
|
||||||
<AvaloniaVersion>11.0.0</AvaloniaVersion>
|
<AvaloniaVersion>11.0.0</AvaloniaVersion>
|
||||||
<PackageLicenseExpression>MIT</PackageLicenseExpression>
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<PropertyGroup Condition="$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net8.0'))">
|
||||||
|
<IsAotCompatible>true</IsAotCompatible>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Avalonia.Controls.TreeDataGrid" Version="$(AvaloniaVersion)"/>
|
<PackageReference Include="Avalonia.Controls.TreeDataGrid" Version="$(AvaloniaVersion)"/>
|
||||||
|
<None Include="irihi.png" Pack="true" PackagePath=""/>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|||||||
@@ -5,4 +5,5 @@
|
|||||||
</StreamGeometry>
|
</StreamGeometry>
|
||||||
<StreamGeometry x:Key="TreeDataGridSortIconAscendingPath">M6.45096 8.34102L11.247 2.86102C11.3408 2.75361 11.4566 2.66753 11.5865 2.60854C11.7163 2.54956 11.8573 2.51904 12 2.51904C12.1426 2.51904 12.2836 2.54956 12.4135 2.60854C12.5433 2.66753 12.6591 2.75361 12.753 2.86102L17.549 8.34102C18.115 8.98802 17.655 10 16.796 10H7.20396C6.34396 10 5.88496 8.98802 6.45096 8.34102Z</StreamGeometry>
|
<StreamGeometry x:Key="TreeDataGridSortIconAscendingPath">M6.45096 8.34102L11.247 2.86102C11.3408 2.75361 11.4566 2.66753 11.5865 2.60854C11.7163 2.54956 11.8573 2.51904 12 2.51904C12.1426 2.51904 12.2836 2.54956 12.4135 2.60854C12.5433 2.66753 12.6591 2.75361 12.753 2.86102L17.549 8.34102C18.115 8.98802 17.655 10 16.796 10H7.20396C6.34396 10 5.88496 8.98802 6.45096 8.34102Z</StreamGeometry>
|
||||||
<StreamGeometry x:Key="TreeDataGridItemCollapsedChevronPathData">M9.65618 3.44015L18.6322 11.2454C19.0906 11.644 19.0906 12.356 18.6322 12.7546L9.65618 20.5598C9.00895 21.1226 8 20.6629 8 19.8052V4.19475C8 3.33705 9.00895 2.87734 9.65618 3.44015Z</StreamGeometry>
|
<StreamGeometry x:Key="TreeDataGridItemCollapsedChevronPathData">M9.65618 3.44015L18.6322 11.2454C19.0906 11.644 19.0906 12.356 18.6322 12.7546L9.65618 20.5598C9.00895 21.1226 8 20.6629 8 19.8052V4.19475C8 3.33705 9.00895 2.87734 9.65618 3.44015Z</StreamGeometry>
|
||||||
|
<Thickness x:Key="TreeDataGridRowMargin">2</Thickness>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|||||||
@@ -149,7 +149,7 @@
|
|||||||
<Panel>
|
<Panel>
|
||||||
<Border
|
<Border
|
||||||
Name="RowBorder"
|
Name="RowBorder"
|
||||||
Margin="2"
|
Margin="{DynamicResource TreeDataGridRowMargin}"
|
||||||
HorizontalAlignment="Stretch"
|
HorizontalAlignment="Stretch"
|
||||||
VerticalAlignment="Stretch"
|
VerticalAlignment="Stretch"
|
||||||
Background="{TemplateBinding Background}"
|
Background="{TemplateBinding Background}"
|
||||||
@@ -183,8 +183,7 @@
|
|||||||
<CheckBox
|
<CheckBox
|
||||||
HorizontalAlignment="{TemplateBinding HorizontalAlignment}"
|
HorizontalAlignment="{TemplateBinding HorizontalAlignment}"
|
||||||
VerticalAlignment="Center"
|
VerticalAlignment="Center"
|
||||||
IsChecked="{TemplateBinding Value,
|
IsChecked="{TemplateBinding Value, Mode=TwoWay}"
|
||||||
Mode=TwoWay}"
|
|
||||||
IsEnabled="{Binding !IsReadOnly, RelativeSource={RelativeSource TemplatedParent}}"
|
IsEnabled="{Binding !IsReadOnly, RelativeSource={RelativeSource TemplatedParent}}"
|
||||||
IsThreeState="{TemplateBinding IsThreeState}"
|
IsThreeState="{TemplateBinding IsThreeState}"
|
||||||
Theme="{DynamicResource SimpleCheckBox}" />
|
Theme="{DynamicResource SimpleCheckBox}" />
|
||||||
@@ -239,8 +238,7 @@
|
|||||||
DockPanel.Dock="Left">
|
DockPanel.Dock="Left">
|
||||||
<ToggleButton
|
<ToggleButton
|
||||||
Focusable="False"
|
Focusable="False"
|
||||||
IsChecked="{TemplateBinding IsExpanded,
|
IsChecked="{TemplateBinding IsExpanded, Mode=TwoWay}"
|
||||||
Mode=TwoWay}"
|
|
||||||
IsVisible="{TemplateBinding ShowExpander}"
|
IsVisible="{TemplateBinding ShowExpander}"
|
||||||
Theme="{StaticResource TreeDataGridExpandCollapseChevron}" />
|
Theme="{StaticResource TreeDataGridExpandCollapseChevron}" />
|
||||||
</Border>
|
</Border>
|
||||||
@@ -287,8 +285,7 @@
|
|||||||
<TextBox
|
<TextBox
|
||||||
Name="PART_Edit"
|
Name="PART_Edit"
|
||||||
Classes="Small"
|
Classes="Small"
|
||||||
Text="{TemplateBinding Value,
|
Text="{TemplateBinding Value, Mode=TwoWay}" />
|
||||||
Mode=TwoWay}" />
|
|
||||||
</Border>
|
</Border>
|
||||||
</ControlTemplate>
|
</ControlTemplate>
|
||||||
</Setter>
|
</Setter>
|
||||||
|
|||||||
BIN
src/Semi.Avalonia.TreeDataGrid/irihi.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
16
src/Semi.Avalonia/Controls/AdornerLayer.axaml
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
<ResourceDictionary
|
||||||
|
xmlns="https://github.com/avaloniaui"
|
||||||
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
|
x:ClassModifier="internal">
|
||||||
|
<ControlTheme x:Key="{x:Type AdornerLayer}" TargetType="AdornerLayer">
|
||||||
|
<Setter Property="DefaultFocusAdorner">
|
||||||
|
<FocusAdornerTemplate>
|
||||||
|
<Rectangle
|
||||||
|
Margin="{DynamicResource AdornerLayerMargin}"
|
||||||
|
Stroke="{DynamicResource AdornerLayerBackground}"
|
||||||
|
StrokeDashArray="1,2"
|
||||||
|
StrokeThickness="{DynamicResource AdornerLayerThickness}" />
|
||||||
|
</FocusAdornerTemplate>
|
||||||
|
</Setter>
|
||||||
|
</ControlTheme>
|
||||||
|
</ResourceDictionary>
|
||||||
@@ -9,6 +9,8 @@
|
|||||||
</StackPanel>
|
</StackPanel>
|
||||||
</Design.PreviewWith>
|
</Design.PreviewWith>
|
||||||
<ControlTheme x:Key="{x:Type AutoCompleteBox}" TargetType="AutoCompleteBox">
|
<ControlTheme x:Key="{x:Type AutoCompleteBox}" TargetType="AutoCompleteBox">
|
||||||
|
<Setter Property="AutoCompleteBox.VerticalAlignment" Value="Center" />
|
||||||
|
<Setter Property="AutoCompleteBox.MinHeight" Value="{DynamicResource AutoCompleteBoxDefaultHeight}" />
|
||||||
<Setter Property="AutoCompleteBox.MaxDropDownHeight" Value="{DynamicResource AutoCompleteMaxDropdownHeight}" />
|
<Setter Property="AutoCompleteBox.MaxDropDownHeight" Value="{DynamicResource AutoCompleteMaxDropdownHeight}" />
|
||||||
<Setter Property="Template">
|
<Setter Property="Template">
|
||||||
<ControlTemplate TargetType="AutoCompleteBox">
|
<ControlTemplate TargetType="AutoCompleteBox">
|
||||||
@@ -16,9 +18,12 @@
|
|||||||
<Panel>
|
<Panel>
|
||||||
<TextBox
|
<TextBox
|
||||||
Name="PART_TextBox"
|
Name="PART_TextBox"
|
||||||
VerticalAlignment="Center"
|
VerticalAlignment="Stretch"
|
||||||
|
MinHeight="{TemplateBinding MinHeight}"
|
||||||
DataValidationErrors.Errors="{TemplateBinding (DataValidationErrors.Errors)}"
|
DataValidationErrors.Errors="{TemplateBinding (DataValidationErrors.Errors)}"
|
||||||
Theme="{DynamicResource NonErrorTextBox}"
|
Theme="{DynamicResource NonErrorTextBox}"
|
||||||
|
InnerLeftContent="{TemplateBinding InnerLeftContent}"
|
||||||
|
InnerRightContent="{TemplateBinding InnerRightContent}"
|
||||||
Watermark="{TemplateBinding Watermark}" />
|
Watermark="{TemplateBinding Watermark}" />
|
||||||
<Popup
|
<Popup
|
||||||
Name="PART_Popup"
|
Name="PART_Popup"
|
||||||
@@ -53,7 +58,8 @@
|
|||||||
<Panel>
|
<Panel>
|
||||||
<TextBox
|
<TextBox
|
||||||
Name="PART_TextBox"
|
Name="PART_TextBox"
|
||||||
VerticalAlignment="Center"
|
VerticalAlignment="Stretch"
|
||||||
|
MinHeight="0"
|
||||||
Classes="Bordered"
|
Classes="Bordered"
|
||||||
DataValidationErrors.Errors="{TemplateBinding (DataValidationErrors.Errors)}"
|
DataValidationErrors.Errors="{TemplateBinding (DataValidationErrors.Errors)}"
|
||||||
Watermark="{TemplateBinding Watermark}" />
|
Watermark="{TemplateBinding Watermark}" />
|
||||||
@@ -83,15 +89,11 @@
|
|||||||
</ControlTemplate>
|
</ControlTemplate>
|
||||||
</Setter>
|
</Setter>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Large /template/ TextBox">
|
<Style Selector="^.Large">
|
||||||
<Setter Property="MinHeight" Value="{DynamicResource AutoCompleteBoxLargeHeight}" />
|
<Setter Property="MinHeight" Value="{DynamicResource AutoCompleteBoxLargeHeight}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Small /template/ TextBox">
|
<Style Selector="^.Small">
|
||||||
<Setter Property="MinHeight" Value="{DynamicResource AutoCompleteBoxSmallHeight}" />
|
<Setter Property="MinHeight" Value="{DynamicResource AutoCompleteBoxSmallHeight}" />
|
||||||
</Style>
|
</Style>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|||||||
@@ -2,34 +2,38 @@
|
|||||||
xmlns="https://github.com/avaloniaui"
|
xmlns="https://github.com/avaloniaui"
|
||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
x:CompileBindings="True">
|
x:CompileBindings="True">
|
||||||
<!-- Button Theme Key: Solid Light Border Borderless; Default is Light -->
|
<!-- Button Theme Key: Light, Solid, Outline, Borderless; Default is Light -->
|
||||||
<!-- Button Default Classes: Primary Secondary, Tertiary, Warning, Danger; Default is Primary -->
|
<!-- Button Default Classes: Primary, Secondary, Tertiary, Success, Warning, Danger; Default is Primary -->
|
||||||
<!-- State: default pointerover pressed disabled -->
|
<!-- State: default, pointerover, pressed, disabled -->
|
||||||
|
|
||||||
<!-- Button Light -->
|
<!-- Button Light -->
|
||||||
<ControlTheme x:Key="{x:Type Button}" TargetType="Button">
|
<ControlTheme x:Key="{x:Type Button}" TargetType="Button">
|
||||||
<Setter Property="Button.Background" Value="{DynamicResource ButtonDefaultBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonDefaultBackground}" />
|
||||||
<Setter Property="Button.Foreground" Value="{DynamicResource ButtonDefaultPrimaryForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultPrimaryForeground}" />
|
||||||
<Setter Property="Button.BorderBrush" Value="{DynamicResource ButtonDefaultBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultBorderBrush}" />
|
||||||
<Setter Property="Button.CornerRadius" Value="{DynamicResource ButtonCornerRadius}" />
|
<Setter Property="CornerRadius" Value="{DynamicResource ButtonCornerRadius}" />
|
||||||
<Setter Property="Button.BorderThickness" Value="{DynamicResource ButtonBorderThickness}" />
|
<Setter Property="BorderThickness" Value="{DynamicResource ButtonBorderThickness}" />
|
||||||
<Setter Property="Button.Padding" Value="{DynamicResource ButtonDefaultPadding}" />
|
<Setter Property="Padding" Value="{DynamicResource ButtonDefaultPadding}" />
|
||||||
<Setter Property="Button.RenderTransform" Value="none" />
|
<Setter Property="HorizontalAlignment" Value="Center" />
|
||||||
<Setter Property="Button.FontSize" Value="{DynamicResource ButtonDefaultFontSize}" />
|
<Setter Property="VerticalAlignment" Value="Center" />
|
||||||
<Setter Property="Button.FontWeight" Value="{DynamicResource ButtonDefaultFontWeight}" />
|
<Setter Property="RenderTransform" Value="none" />
|
||||||
<Setter Property="Button.HorizontalContentAlignment" Value="Center" />
|
<Setter Property="FontSize" Value="{DynamicResource ButtonDefaultFontSize}" />
|
||||||
<Setter Property="Button.VerticalContentAlignment" Value="Center" />
|
<Setter Property="FontWeight" Value="{DynamicResource ButtonDefaultFontWeight}" />
|
||||||
<Setter Property="Button.MinHeight" Value="12" />
|
<Setter Property="BackgroundSizing" Value="OuterBorderEdge" />
|
||||||
<Setter Property="Button.Cursor" Value="Hand" />
|
<Setter Property="HorizontalContentAlignment" Value="Center" />
|
||||||
<Setter Property="Button.Template">
|
<Setter Property="VerticalContentAlignment" Value="Center" />
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource ButtonDefaultHeight}" />
|
||||||
|
<Setter Property="Cursor" Value="Hand" />
|
||||||
|
<Setter Property="Template">
|
||||||
<ControlTemplate TargetType="Button">
|
<ControlTemplate TargetType="Button">
|
||||||
<ContentPresenter
|
<ContentPresenter
|
||||||
x:Name="PART_ContentPresenter"
|
x:Name="PART_ContentPresenter"
|
||||||
Padding="{TemplateBinding Padding}"
|
Padding="{TemplateBinding Padding}"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
|
VerticalAlignment="Stretch"
|
||||||
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
||||||
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
||||||
Background="{TemplateBinding Background}"
|
BackgroundSizing="{TemplateBinding BackgroundSizing}"
|
||||||
BorderBrush="{TemplateBinding BorderBrush}"
|
|
||||||
BorderThickness="{TemplateBinding BorderThickness}"
|
BorderThickness="{TemplateBinding BorderThickness}"
|
||||||
Content="{TemplateBinding Content}"
|
Content="{TemplateBinding Content}"
|
||||||
ContentTemplate="{TemplateBinding ContentTemplate}"
|
ContentTemplate="{TemplateBinding ContentTemplate}"
|
||||||
@@ -45,6 +49,11 @@
|
|||||||
<Setter Property="RenderTransform" Value="scale(0.98)" />
|
<Setter Property="RenderTransform" Value="scale(0.98)" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="BorderBrush" Value="{TemplateBinding BorderBrush}" />
|
||||||
|
<Setter Property="Background" Value="{TemplateBinding Background}" />
|
||||||
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^.Primary">
|
<Style Selector="^.Primary">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultPrimaryForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultPrimaryForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
@@ -64,26 +73,27 @@
|
|||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDangerForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDangerForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^:pointerover">
|
<Style Selector="^:pointerover /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultPointeroverBorderBrush}" />
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonDefaultPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonDefaultPointeroverBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultPressedBorderBrush}" />
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonDefaultPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonDefaultPressedBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^:disabled">
|
<Style Selector="^:disabled /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultDisabledBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultDisabledBorderBrush}" />
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonDefaultDisabledBackground}" />
|
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^.Large">
|
<Style Selector="^.Large">
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource ButtonLargeHeight}" />
|
||||||
<Setter Property="Padding" Value="{DynamicResource ButtonLargePadding}" />
|
<Setter Property="Padding" Value="{DynamicResource ButtonLargePadding}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Small">
|
<Style Selector="^.Small">
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource ButtonSmallHeight}" />
|
||||||
<Setter Property="Padding" Value="{DynamicResource ButtonSmallPadding}" />
|
<Setter Property="Padding" Value="{DynamicResource ButtonSmallPadding}" />
|
||||||
</Style>
|
</Style>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
@@ -92,101 +102,147 @@
|
|||||||
x:Key="SolidButton"
|
x:Key="SolidButton"
|
||||||
BasedOn="{StaticResource {x:Type Button}}"
|
BasedOn="{StaticResource {x:Type Button}}"
|
||||||
TargetType="Button">
|
TargetType="Button">
|
||||||
<Setter Property="Button.Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Button.Background" Value="{DynamicResource ButtonSolidPrimaryBackground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
<Setter Property="Button.BorderBrush" Value="{DynamicResource ButtonSolidPrimaryBorderBrush}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^:pointerover">
|
<Style Selector="^:pointerover /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPointeroverBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^.Primary">
|
<Style Selector="^.Primary">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryBackground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryBorderBrush}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryBackground}" />
|
||||||
<Style Selector="^:pointerover">
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPointeroverBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Secondary">
|
<Style Selector="^.Secondary">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryBackground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSecondaryBorderBrush}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryBackground}" />
|
||||||
<Style Selector="^:pointerover">
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSecondaryBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSecondaryPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSecondaryPointeroverBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSecondaryPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSecondaryPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Tertiary">
|
<Style Selector="^.Tertiary">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryBackground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidTertiaryBorderBrush}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryBackground}" />
|
||||||
<Style Selector="^:pointerover">
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidTertiaryBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidTertiaryPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidTertiaryPointeroverBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidTertiaryPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidTertiaryPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Success">
|
<Style Selector="^.Success">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessBackground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSuccessBorderBrush}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessBackground}" />
|
||||||
<Style Selector="^:pointerover">
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSuccessBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSuccessPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSuccessPointeroverBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSuccessPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSuccessPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Warning">
|
<Style Selector="^.Warning">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningBackground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidWarningBorderBrush}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningBackground}" />
|
||||||
<Style Selector="^:pointerover">
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidWarningBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidWarningPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidWarningPointeroverBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidWarningPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidWarningPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Danger">
|
<Style Selector="^.Danger">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerBackground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidDangerBorderBrush}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerBackground}" />
|
||||||
<Style Selector="^:pointerover">
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidDangerBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidDangerPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidDangerPointeroverBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidDangerPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidDangerPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^:disabled">
|
<Style Selector="^:disabled /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultDisabledBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultDisabledBorderBrush}" />
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonDefaultDisabledBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidDisabledBackground}" />
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
||||||
|
</Style>
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme
|
||||||
|
x:Key="OutlineButton"
|
||||||
|
BasedOn="{StaticResource {x:Type Button}}"
|
||||||
|
TargetType="Button">
|
||||||
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonOutlineBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonOutlinePointeroverBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pressed /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonOutlinePressedBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^.Success /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineSuccessBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^.Warning /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineWarningBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^.Danger /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineDangerBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:disabled /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineBorderBrush}" />
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonOutlineBackground}" />
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
@@ -195,9 +251,11 @@
|
|||||||
x:Key="BorderlessButton"
|
x:Key="BorderlessButton"
|
||||||
BasedOn="{StaticResource {x:Type Button}}"
|
BasedOn="{StaticResource {x:Type Button}}"
|
||||||
TargetType="Button">
|
TargetType="Button">
|
||||||
<Setter Property="Button.Background" Value="Transparent" />
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Button.BorderBrush" Value="Transparent" />
|
<Setter Property="Background" Value="Transparent" />
|
||||||
<Style Selector="^:disabled">
|
<Setter Property="BorderBrush" Value="Transparent" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:disabled /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="BorderBrush" Value="Transparent" />
|
<Setter Property="BorderBrush" Value="Transparent" />
|
||||||
<Setter Property="Background" Value="Transparent" />
|
<Setter Property="Background" Value="Transparent" />
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
||||||
|
|||||||
@@ -31,6 +31,7 @@
|
|||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
|
|
||||||
<ControlTheme x:Key="{x:Type CalendarItem}" TargetType="CalendarItem">
|
<ControlTheme x:Key="{x:Type CalendarItem}" TargetType="CalendarItem">
|
||||||
|
<Setter Property="CalendarItem.MinWidth" Value="{DynamicResource CalendarMinWidth}" />
|
||||||
<Setter Property="CalendarItem.MinHeight" Value="{DynamicResource CalendarMinHeight}" />
|
<Setter Property="CalendarItem.MinHeight" Value="{DynamicResource CalendarMinHeight}" />
|
||||||
<Setter Property="CalendarItem.DayTitleTemplate">
|
<Setter Property="CalendarItem.DayTitleTemplate">
|
||||||
<Template>
|
<Template>
|
||||||
@@ -53,7 +54,7 @@
|
|||||||
BorderThickness="{TemplateBinding BorderThickness}"
|
BorderThickness="{TemplateBinding BorderThickness}"
|
||||||
CornerRadius="{TemplateBinding CornerRadius}">
|
CornerRadius="{TemplateBinding CornerRadius}">
|
||||||
<Grid
|
<Grid
|
||||||
MinWidth="{DynamicResource CalendarMinWidth}"
|
MinWidth="{TemplateBinding MinWidth}"
|
||||||
MinHeight="{TemplateBinding MinHeight}"
|
MinHeight="{TemplateBinding MinHeight}"
|
||||||
HorizontalAlignment="Stretch"
|
HorizontalAlignment="Stretch"
|
||||||
VerticalAlignment="Stretch"
|
VerticalAlignment="Stretch"
|
||||||
|
|||||||
@@ -9,12 +9,14 @@
|
|||||||
<Setter Property="BorderBrush" Value="{DynamicResource CalendarDatePickerBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource CalendarDatePickerBorderBrush}" />
|
||||||
<Setter Property="BorderThickness" Value="{DynamicResource CalendarDatePickerBorderThickness}" />
|
<Setter Property="BorderThickness" Value="{DynamicResource CalendarDatePickerBorderThickness}" />
|
||||||
<Setter Property="CornerRadius" Value="{DynamicResource CalendarDatePickerCornerRadius}" />
|
<Setter Property="CornerRadius" Value="{DynamicResource CalendarDatePickerCornerRadius}" />
|
||||||
|
<Setter Property="BackgroundSizing" Value="OuterBorderEdge"/>
|
||||||
<Setter Property="IsTodayHighlighted" Value="True" />
|
<Setter Property="IsTodayHighlighted" Value="True" />
|
||||||
<Setter Property="HorizontalAlignment" Value="Left" />
|
<Setter Property="HorizontalAlignment" Value="Left" />
|
||||||
<Setter Property="VerticalAlignment" Value="Center" />
|
<Setter Property="VerticalAlignment" Value="Center" />
|
||||||
<Setter Property="HorizontalContentAlignment" Value="Left" />
|
<Setter Property="HorizontalContentAlignment" Value="Left" />
|
||||||
<Setter Property="VerticalContentAlignment" Value="Center" />
|
<Setter Property="VerticalContentAlignment" Value="Center" />
|
||||||
<Setter Property="Padding" Value="8 0" />
|
<Setter Property="Padding" Value="8 0" />
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource CalendarDatePickerDefaultHeight}" />
|
||||||
<Setter Property="Template">
|
<Setter Property="Template">
|
||||||
<ControlTemplate TargetType="CalendarDatePicker">
|
<ControlTemplate TargetType="CalendarDatePicker">
|
||||||
<DataValidationErrors>
|
<DataValidationErrors>
|
||||||
@@ -24,96 +26,96 @@
|
|||||||
VerticalAlignment="Stretch">
|
VerticalAlignment="Stretch">
|
||||||
<Border
|
<Border
|
||||||
x:Name="Background"
|
x:Name="Background"
|
||||||
|
BackgroundSizing="{TemplateBinding BackgroundSizing}"
|
||||||
Background="{TemplateBinding Background}"
|
Background="{TemplateBinding Background}"
|
||||||
BorderBrush="{TemplateBinding BorderBrush}"
|
BorderBrush="{TemplateBinding BorderBrush}"
|
||||||
BorderThickness="{TemplateBinding BorderThickness}"
|
BorderThickness="{TemplateBinding BorderThickness}"
|
||||||
CornerRadius="{TemplateBinding CornerRadius}">
|
CornerRadius="{TemplateBinding CornerRadius}"/>
|
||||||
<Grid
|
<Grid
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
|
VerticalAlignment="Stretch"
|
||||||
|
ColumnDefinitions="*, Auto, Auto">
|
||||||
|
<TextBox
|
||||||
|
Name="PART_TextBox"
|
||||||
|
Grid.Column="0"
|
||||||
|
Grid.ColumnSpan="2"
|
||||||
|
MinHeight="{TemplateBinding MinHeight}"
|
||||||
HorizontalAlignment="Stretch"
|
HorizontalAlignment="Stretch"
|
||||||
VerticalAlignment="Center"
|
VerticalAlignment="Stretch"
|
||||||
ColumnDefinitions="*, Auto, Auto">
|
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
||||||
<TextBox
|
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
||||||
Name="PART_TextBox"
|
Background="Transparent"
|
||||||
Grid.Column="0"
|
BorderBrush="Transparent"
|
||||||
Grid.ColumnSpan="2"
|
BorderThickness="0"
|
||||||
MinHeight="{DynamicResource CalendarDatePickerDefaultHeight}"
|
CornerRadius="{TemplateBinding CornerRadius}"
|
||||||
HorizontalAlignment="Stretch"
|
Foreground="{TemplateBinding Foreground}"
|
||||||
VerticalAlignment="Center"
|
Theme="{DynamicResource NonErrorTextBox}"
|
||||||
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
UseFloatingWatermark="{TemplateBinding UseFloatingWatermark}"
|
||||||
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
Watermark="{TemplateBinding Watermark}">
|
||||||
|
<TextBox.Styles>
|
||||||
|
<Style Selector="TextBox#PART_TextBox:pointerover /template/ Border#PART_ContentPresenterBorder">
|
||||||
|
<!-- By default the TextBox has its own focused state, override this to disable it here -->
|
||||||
|
<Setter Property="Background" Value="Transparent" />
|
||||||
|
<Setter Property="BorderBrush" Value="Transparent" />
|
||||||
|
<Setter Property="BorderThickness" Value="0" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="TextBox#PART_TextBox:focus /template/ Border#PART_ContentPresenterBorder">
|
||||||
|
<!-- By default the TextBox has its own focused state, override this to disable it here -->
|
||||||
|
<Setter Property="Background" Value="Transparent" />
|
||||||
|
<Setter Property="BorderBrush" Value="Transparent" />
|
||||||
|
<Setter Property="BorderThickness" Value="0" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="TextBox#PART_TextBox:disabled">
|
||||||
|
<Style Selector="^ /template/ Border#PART_ContentPresenterBorder">
|
||||||
|
<!-- By default the TextBox has its own disabled state, override this to make the border background show through -->
|
||||||
|
<Setter Property="Background" Value="Transparent" />
|
||||||
|
<Setter Property="BorderBrush" Value="Transparent" />
|
||||||
|
</Style>
|
||||||
|
</Style>
|
||||||
|
</TextBox.Styles>
|
||||||
|
</TextBox>
|
||||||
|
<Button
|
||||||
|
Name="ClearButton"
|
||||||
|
Grid.Column="1"
|
||||||
|
Padding="0,0,8,0"
|
||||||
|
Content="{DynamicResource IconButtonClearData}"
|
||||||
|
Command="{Binding $parent[CalendarDatePicker].Clear}"
|
||||||
|
Focusable="False"
|
||||||
|
IsVisible="False"
|
||||||
|
Theme="{DynamicResource InnerIconButton}" />
|
||||||
|
<Button
|
||||||
|
Name="PART_Button"
|
||||||
|
Grid.Column="2"
|
||||||
|
Padding="0,0,8,0"
|
||||||
|
Content="{DynamicResource CalendarDatePickerIconGlyph}"
|
||||||
|
Focusable="False"
|
||||||
|
Theme="{DynamicResource InnerIconButton}" />
|
||||||
|
<Popup
|
||||||
|
Name="PART_Popup"
|
||||||
|
Grid.Column="0"
|
||||||
|
HorizontalOffset="-8"
|
||||||
|
IsLightDismissEnabled="True"
|
||||||
|
PlacementTarget="{TemplateBinding}"
|
||||||
|
VerticalOffset="-4">
|
||||||
|
<Border
|
||||||
|
Margin="8"
|
||||||
Background="Transparent"
|
Background="Transparent"
|
||||||
BorderBrush="Transparent"
|
BoxShadow="{DynamicResource CalendarDatePickerPopupBoxShadows}"
|
||||||
BorderThickness="0"
|
CornerRadius="{DynamicResource CalendarCornerRadius}">
|
||||||
CornerRadius="{TemplateBinding CornerRadius}"
|
<Calendar
|
||||||
Foreground="{TemplateBinding Foreground}"
|
Name="PART_Calendar"
|
||||||
Theme="{DynamicResource NonErrorTextBox}"
|
BorderThickness="0"
|
||||||
UseFloatingWatermark="{TemplateBinding UseFloatingWatermark}"
|
CornerRadius="{Binding $parent[Border].CornerRadius}"
|
||||||
Watermark="{TemplateBinding Watermark}">
|
DisplayDate="{TemplateBinding DisplayDate}"
|
||||||
<TextBox.Styles>
|
DisplayDateEnd="{TemplateBinding DisplayDateEnd}"
|
||||||
<Style Selector="TextBox#PART_TextBox:pointerover /template/ Border#PART_ContentPresenterBorder">
|
DisplayDateStart="{TemplateBinding DisplayDateStart}"
|
||||||
<!-- By default the TextBox has its own focused state, override this to disable it here -->
|
FirstDayOfWeek="{TemplateBinding FirstDayOfWeek}"
|
||||||
<Setter Property="Background" Value="Transparent" />
|
IsTodayHighlighted="{TemplateBinding IsTodayHighlighted}"
|
||||||
<Setter Property="BorderBrush" Value="Transparent" />
|
SelectedDate="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=SelectedDate, Mode=TwoWay}">
|
||||||
<Setter Property="BorderThickness" Value="0" />
|
</Calendar>
|
||||||
</Style>
|
</Border>
|
||||||
<Style Selector="TextBox#PART_TextBox:focus /template/ Border#PART_ContentPresenterBorder">
|
</Popup>
|
||||||
<!-- By default the TextBox has its own focused state, override this to disable it here -->
|
</Grid>
|
||||||
<Setter Property="Background" Value="Transparent" />
|
|
||||||
<Setter Property="BorderBrush" Value="Transparent" />
|
|
||||||
<Setter Property="BorderThickness" Value="0" />
|
|
||||||
</Style>
|
|
||||||
<Style Selector="TextBox#PART_TextBox:disabled">
|
|
||||||
<Style Selector="^ /template/ Border#PART_ContentPresenterBorder">
|
|
||||||
<!-- By default the TextBox has its own disabled state, override this to make the border background show through -->
|
|
||||||
<Setter Property="Background" Value="Transparent" />
|
|
||||||
<Setter Property="BorderBrush" Value="Transparent" />
|
|
||||||
</Style>
|
|
||||||
</Style>
|
|
||||||
</TextBox.Styles>
|
|
||||||
</TextBox>
|
|
||||||
<Button
|
|
||||||
Name="ClearButton"
|
|
||||||
Grid.Column="1"
|
|
||||||
Padding="0,0,8,0"
|
|
||||||
Content="{DynamicResource IconButtonClearData}"
|
|
||||||
Command="{Binding $parent[CalendarDatePicker].Clear}"
|
|
||||||
Focusable="False"
|
|
||||||
IsVisible="False"
|
|
||||||
Theme="{DynamicResource InnerIconButton}" />
|
|
||||||
<Button
|
|
||||||
Name="PART_Button"
|
|
||||||
Grid.Column="2"
|
|
||||||
Padding="0,0,8,0"
|
|
||||||
Content="{DynamicResource CalendarDatePickerIconGlyph}"
|
|
||||||
Focusable="False"
|
|
||||||
Theme="{DynamicResource InnerIconButton}" />
|
|
||||||
<Popup
|
|
||||||
Name="PART_Popup"
|
|
||||||
Grid.Column="0"
|
|
||||||
HorizontalOffset="-8"
|
|
||||||
IsLightDismissEnabled="True"
|
|
||||||
PlacementTarget="{TemplateBinding}"
|
|
||||||
VerticalOffset="-4">
|
|
||||||
<Border
|
|
||||||
Margin="8"
|
|
||||||
Background="Transparent"
|
|
||||||
BoxShadow="{DynamicResource CalendarDatePickerPopupBoxShadows}"
|
|
||||||
CornerRadius="{DynamicResource CalendarCornerRadius}">
|
|
||||||
<Calendar
|
|
||||||
Name="PART_Calendar"
|
|
||||||
BorderThickness="0"
|
|
||||||
CornerRadius="{Binding $parent[Border].CornerRadius}"
|
|
||||||
DisplayDate="{TemplateBinding DisplayDate}"
|
|
||||||
DisplayDateEnd="{TemplateBinding DisplayDateEnd}"
|
|
||||||
DisplayDateStart="{TemplateBinding DisplayDateStart}"
|
|
||||||
FirstDayOfWeek="{TemplateBinding FirstDayOfWeek}"
|
|
||||||
IsTodayHighlighted="{TemplateBinding IsTodayHighlighted}"
|
|
||||||
SelectedDate="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=SelectedDate, Mode=TwoWay}">
|
|
||||||
</Calendar>
|
|
||||||
</Border>
|
|
||||||
</Popup>
|
|
||||||
</Grid>
|
|
||||||
</Border>
|
|
||||||
|
|
||||||
</Panel>
|
</Panel>
|
||||||
</DataValidationErrors>
|
</DataValidationErrors>
|
||||||
@@ -128,14 +130,10 @@
|
|||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^.Large">
|
<Style Selector="^.Large">
|
||||||
<Style Selector="^ /template/ TextBox#PART_TextBox">
|
<Setter Property="MinHeight" Value="{DynamicResource CalendarDatePickerLargeHeight}" />
|
||||||
<Setter Property="MinHeight" Value="{DynamicResource CalendarDatePickerInnerLargeHeight}" />
|
|
||||||
</Style>
|
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Small">
|
<Style Selector="^.Small">
|
||||||
<Style Selector="^ /template/ TextBox#PART_TextBox">
|
<Setter Property="MinHeight" Value="{DynamicResource CalendarDatePickerSmallHeight}" />
|
||||||
<Setter Property="MinHeight" Value="{DynamicResource CalendarDatePickerInnerSmallHeight}" />
|
|
||||||
</Style>
|
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^:pointerover">
|
<Style Selector="^:pointerover">
|
||||||
|
|||||||
@@ -123,8 +123,8 @@
|
|||||||
<Setter Property="Background" Value="{DynamicResource CheckBoxCheckedDisabledBackground}" />
|
<Setter Property="Background" Value="{DynamicResource CheckBoxCheckedDisabledBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^ /template/ Path#CheckGlyph">
|
<Style Selector="^ /template/ PathIcon#CheckGlyph">
|
||||||
<Setter Property="Fill" Value="{DynamicResource CheckBoxGlyphDisabledFill}" />
|
<Setter Property="Foreground" Value="{DynamicResource CheckBoxGlyphDisabledFill}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
@@ -166,8 +166,8 @@
|
|||||||
<Setter Property="Background" Value="{DynamicResource CheckBoxCheckedDisabledBackground}" />
|
<Setter Property="Background" Value="{DynamicResource CheckBoxCheckedDisabledBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^ /template/ Path#CheckGlyph">
|
<Style Selector="^ /template/ PathIcon#CheckGlyph">
|
||||||
<Setter Property="Fill" Value="{DynamicResource CheckBoxGlyphDisabledFill}" />
|
<Setter Property="Foreground" Value="{DynamicResource CheckBoxGlyphDisabledFill}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
@@ -275,8 +275,8 @@
|
|||||||
<Setter Property="Background" Value="{DynamicResource CheckBoxCheckedDisabledBackground}" />
|
<Setter Property="Background" Value="{DynamicResource CheckBoxCheckedDisabledBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^ /template/ Path#CheckGlyph">
|
<Style Selector="^ /template/ PathIcon#CheckGlyph">
|
||||||
<Setter Property="Fill" Value="{DynamicResource CheckBoxGlyphDisabledFill}" />
|
<Setter Property="Foreground" Value="{DynamicResource CheckBoxGlyphDisabledFill}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
@@ -315,8 +315,8 @@
|
|||||||
<Setter Property="Background" Value="{DynamicResource CheckBoxCheckedDisabledBackground}" />
|
<Setter Property="Background" Value="{DynamicResource CheckBoxCheckedDisabledBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^ /template/ Path#CheckGlyph">
|
<Style Selector="^ /template/ PathIcon#CheckGlyph">
|
||||||
<Setter Property="Fill" Value="{DynamicResource CheckBoxGlyphDisabledFill}" />
|
<Setter Property="Foreground" Value="{DynamicResource CheckBoxGlyphDisabledFill}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
@@ -457,8 +457,8 @@
|
|||||||
<Setter Property="Background" Value="{DynamicResource CheckBoxCheckedDisabledBackground}" />
|
<Setter Property="Background" Value="{DynamicResource CheckBoxCheckedDisabledBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^ /template/ Path#CheckGlyph">
|
<Style Selector="^ /template/ PathIcon#CheckGlyph">
|
||||||
<Setter Property="Fill" Value="{DynamicResource CheckBoxGlyphDisabledFill}" />
|
<Setter Property="Foreground" Value="{DynamicResource CheckBoxGlyphDisabledFill}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
@@ -512,8 +512,8 @@
|
|||||||
<Setter Property="Background" Value="{DynamicResource CheckBoxCheckedDisabledBackground}" />
|
<Setter Property="Background" Value="{DynamicResource CheckBoxCheckedDisabledBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^ /template/ Path#CheckGlyph">
|
<Style Selector="^ /template/ PathIcon#CheckGlyph">
|
||||||
<Setter Property="Fill" Value="{DynamicResource CheckBoxGlyphDisabledFill}" />
|
<Setter Property="Foreground" Value="{DynamicResource CheckBoxGlyphDisabledFill}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
|
|||||||
@@ -32,6 +32,7 @@
|
|||||||
<Setter Property="FocusAdorner" Value="{x:Null}" />
|
<Setter Property="FocusAdorner" Value="{x:Null}" />
|
||||||
<Setter Property="MaxDropDownHeight" Value="504" />
|
<Setter Property="MaxDropDownHeight" Value="504" />
|
||||||
<Setter Property="Background" Value="{DynamicResource ComboBoxSelectorBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ComboBoxSelectorBackground}" />
|
||||||
|
<Setter Property="BackgroundSizing" Value="OuterBorderEdge" />
|
||||||
<Setter Property="BorderThickness" Value="1" />
|
<Setter Property="BorderThickness" Value="1" />
|
||||||
<Setter Property="Cursor" Value="Hand" />
|
<Setter Property="Cursor" Value="Hand" />
|
||||||
<Setter Property="CornerRadius" Value="{DynamicResource ComboBoxSelectorCornerRadius}" />
|
<Setter Property="CornerRadius" Value="{DynamicResource ComboBoxSelectorCornerRadius}" />
|
||||||
@@ -41,6 +42,7 @@
|
|||||||
<Setter Property="VerticalContentAlignment" Value="Center" />
|
<Setter Property="VerticalContentAlignment" Value="Center" />
|
||||||
<Setter Property="HorizontalAlignment" Value="Left" />
|
<Setter Property="HorizontalAlignment" Value="Left" />
|
||||||
<Setter Property="VerticalAlignment" Value="Top" />
|
<Setter Property="VerticalAlignment" Value="Top" />
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource ComboBoxDefaultHeight}" />
|
||||||
<Setter Property="Template">
|
<Setter Property="Template">
|
||||||
<ControlTemplate TargetType="ComboBox">
|
<ControlTemplate TargetType="ComboBox">
|
||||||
<DataValidationErrors>
|
<DataValidationErrors>
|
||||||
@@ -49,18 +51,19 @@
|
|||||||
x:Name="Background"
|
x:Name="Background"
|
||||||
Grid.Column="0"
|
Grid.Column="0"
|
||||||
Grid.ColumnSpan="3"
|
Grid.ColumnSpan="3"
|
||||||
MinWidth="{DynamicResource ComboBoxThemeMinWidth}"
|
|
||||||
MinHeight="{DynamicResource ComboBoxDefaultHeight}"
|
|
||||||
Background="{TemplateBinding Background}"
|
Background="{TemplateBinding Background}"
|
||||||
|
BackgroundSizing="{TemplateBinding BackgroundSizing}"
|
||||||
BorderBrush="{TemplateBinding BorderBrush}"
|
BorderBrush="{TemplateBinding BorderBrush}"
|
||||||
BorderThickness="{TemplateBinding BorderThickness}"
|
BorderThickness="{TemplateBinding BorderThickness}"
|
||||||
CornerRadius="{TemplateBinding CornerRadius}" />
|
CornerRadius="{TemplateBinding CornerRadius}"
|
||||||
|
MinHeight="{TemplateBinding MinHeight}" />
|
||||||
<TextBlock
|
<TextBlock
|
||||||
x:Name="PlaceholderTextBlock"
|
x:Name="PlaceholderTextBlock"
|
||||||
Grid.Column="0"
|
Grid.Column="0"
|
||||||
Margin="{TemplateBinding Padding}"
|
Margin="{TemplateBinding Padding}"
|
||||||
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
|
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
|
||||||
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
|
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
|
||||||
|
TextTrimming="CharacterEllipsis"
|
||||||
Foreground="{TemplateBinding Foreground}"
|
Foreground="{TemplateBinding Foreground}"
|
||||||
IsVisible="{TemplateBinding SelectionBoxItem,
|
IsVisible="{TemplateBinding SelectionBoxItem,
|
||||||
Converter={x:Static ObjectConverters.IsNull}}"
|
Converter={x:Static ObjectConverters.IsNull}}"
|
||||||
@@ -147,10 +150,10 @@
|
|||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^.Large /template/ Border#Background">
|
<Style Selector="^.Large">
|
||||||
<Setter Property="MinHeight" Value="{DynamicResource ComboBoxLargeHeight}" />
|
<Setter Property="MinHeight" Value="{DynamicResource ComboBoxLargeHeight}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Small /template/ Border#Background">
|
<Style Selector="^.Small">
|
||||||
<Setter Property="MinHeight" Value="{DynamicResource ComboBoxSmallHeight}" />
|
<Setter Property="MinHeight" Value="{DynamicResource ComboBoxSmallHeight}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
@@ -158,9 +161,18 @@
|
|||||||
<Style Selector="^:pointerover">
|
<Style Selector="^:pointerover">
|
||||||
<Setter Property="Background" Value="{DynamicResource ComboBoxSelectorPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ComboBoxSelectorPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ComboBoxSelectorPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ComboBoxSelectorPointeroverBorderBrush}" />
|
||||||
|
<Style Selector="^ /template/ PathIcon#DropDownGlyph">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource ComboBoxIconPointeroverForeground}" />
|
||||||
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pointerover /template/ PathIcon#DropDownGlyph">
|
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ComboBoxIconPointeroverForeground}" />
|
<!-- Focus State -->
|
||||||
|
<Style Selector="^:focus">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ComboBoxSelectorFocusBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ComboBoxSelectorFocusBorderBrush}" />
|
||||||
|
<Style Selector="^ /template/ PathIcon#DropDownGlyph">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource ComboBoxIconFocusForeground}" />
|
||||||
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<!-- Pressed State -->
|
<!-- Pressed State -->
|
||||||
@@ -221,6 +233,10 @@
|
|||||||
<Setter Property="Background" Value="{DynamicResource ComboBoxSelectorBorderedPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ComboBoxSelectorBorderedPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ComboBoxSelectorBorderedPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ComboBoxSelectorBorderedPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
<Style Selector="^:focus /template/ Border#Background">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ComboBoxSelectorBorderedFocusBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ComboBoxSelectorBorderedFocusBorderBrush}" />
|
||||||
|
</Style>
|
||||||
<Style Selector="^:disabled">
|
<Style Selector="^:disabled">
|
||||||
<Style Selector="^ /template/ Border#Background">
|
<Style Selector="^ /template/ Border#Background">
|
||||||
<Setter Property="Background" Value="{DynamicResource ComboBoxSelectorDisabledBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ComboBoxSelectorDisabledBackground}" />
|
||||||
@@ -283,6 +299,10 @@
|
|||||||
<Setter Property="Background" Value="{DynamicResource ComboBoxItemPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ComboBoxItemPointeroverBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
|
<Style Selector="^:focus /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ComboBoxItemFocusBackground}" />
|
||||||
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^:disabled /template/ ContentPresenter#PART_ContentPresenter">
|
<Style Selector="^:disabled /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ComboBoxItemDisabledBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ComboBoxItemDisabledBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
@@ -302,5 +322,6 @@
|
|||||||
<Setter Property="Background" Value="{DynamicResource ComboBoxItemSelectedPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ComboBoxItemSelectedPointeroverBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|||||||
@@ -1,22 +0,0 @@
|
|||||||
<ResourceDictionary
|
|
||||||
xmlns="https://github.com/avaloniaui"
|
|
||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
||||||
x:CompileBindings="True">
|
|
||||||
<ControlTheme x:Key="{x:Type ContentControl}" TargetType="ContentControl">
|
|
||||||
<Setter Property="Template">
|
|
||||||
<ControlTemplate TargetType="ContentControl">
|
|
||||||
<ContentPresenter
|
|
||||||
Name="PART_ContentPresenter"
|
|
||||||
Padding="{TemplateBinding Padding}"
|
|
||||||
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
|
||||||
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
|
||||||
Background="{TemplateBinding Background}"
|
|
||||||
BorderBrush="{TemplateBinding BorderBrush}"
|
|
||||||
BorderThickness="{TemplateBinding BorderThickness}"
|
|
||||||
Content="{TemplateBinding Content}"
|
|
||||||
ContentTemplate="{TemplateBinding ContentTemplate}"
|
|
||||||
CornerRadius="{TemplateBinding CornerRadius}" />
|
|
||||||
</ControlTemplate>
|
|
||||||
</Setter>
|
|
||||||
</ControlTheme>
|
|
||||||
</ResourceDictionary>
|
|
||||||
@@ -132,6 +132,7 @@
|
|||||||
<Setter Property="CornerRadius" Value="{DynamicResource DateTimePickerButtonCornerRadius}" />
|
<Setter Property="CornerRadius" Value="{DynamicResource DateTimePickerButtonCornerRadius}" />
|
||||||
<Setter Property="HorizontalAlignment" Value="Left" />
|
<Setter Property="HorizontalAlignment" Value="Left" />
|
||||||
<Setter Property="VerticalAlignment" Value="Center" />
|
<Setter Property="VerticalAlignment" Value="Center" />
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource DateTimePickerButtonDefaultHeight}" />
|
||||||
<Setter Property="Template">
|
<Setter Property="Template">
|
||||||
<ControlTemplate TargetType="DatePicker">
|
<ControlTemplate TargetType="DatePicker">
|
||||||
<DataValidationErrors>
|
<DataValidationErrors>
|
||||||
@@ -145,7 +146,7 @@
|
|||||||
Grid.ColumnSpan="2"
|
Grid.ColumnSpan="2"
|
||||||
Width="298"
|
Width="298"
|
||||||
MinWidth="298"
|
MinWidth="298"
|
||||||
MinHeight="{DynamicResource DateTimePickerButtonDefaultHeight}"
|
MinHeight="{TemplateBinding MinHeight}"
|
||||||
HorizontalAlignment="Stretch"
|
HorizontalAlignment="Stretch"
|
||||||
VerticalAlignment="Stretch"
|
VerticalAlignment="Stretch"
|
||||||
Background="{TemplateBinding Background}"
|
Background="{TemplateBinding Background}"
|
||||||
@@ -165,43 +166,45 @@
|
|||||||
ColumnDefinitions="78*,Auto,132*,Auto,78*">
|
ColumnDefinitions="78*,Auto,132*,Auto,78*">
|
||||||
<TextBlock
|
<TextBlock
|
||||||
Name="PART_DayTextBlock"
|
Name="PART_DayTextBlock"
|
||||||
Padding="12,4"
|
Padding="12,0"
|
||||||
HorizontalAlignment="Center"
|
HorizontalAlignment="Center"
|
||||||
VerticalAlignment="Center"
|
VerticalAlignment="Center"
|
||||||
FontFamily="{TemplateBinding FontFamily}"
|
FontFamily="{TemplateBinding FontFamily}"
|
||||||
FontSize="{TemplateBinding FontSize}"
|
FontSize="{TemplateBinding FontSize}"
|
||||||
FontWeight="{TemplateBinding FontWeight}"
|
FontWeight="{TemplateBinding FontWeight}"
|
||||||
Text="day" />
|
Text="{DynamicResource STRING_DATEPICKER_DAY_TEXT}" />
|
||||||
<TextBlock
|
<TextBlock
|
||||||
Name="PART_MonthTextBlock"
|
Name="PART_MonthTextBlock"
|
||||||
Padding="12,4"
|
Padding="12,0"
|
||||||
VerticalAlignment="Center"
|
VerticalAlignment="Center"
|
||||||
FontFamily="{TemplateBinding FontFamily}"
|
FontFamily="{TemplateBinding FontFamily}"
|
||||||
FontSize="{TemplateBinding FontSize}"
|
FontSize="{TemplateBinding FontSize}"
|
||||||
FontWeight="{TemplateBinding FontWeight}"
|
FontWeight="{TemplateBinding FontWeight}"
|
||||||
Text="month"
|
Text="{DynamicResource STRING_DATEPICKER_MONTH_TEXT}"
|
||||||
TextAlignment="Left" />
|
TextAlignment="Left" />
|
||||||
<TextBlock
|
<TextBlock
|
||||||
Name="PART_YearTextBlock"
|
Name="PART_YearTextBlock"
|
||||||
Padding="12,4"
|
Padding="12,0"
|
||||||
HorizontalAlignment="Center"
|
HorizontalAlignment="Center"
|
||||||
VerticalAlignment="Center"
|
VerticalAlignment="Center"
|
||||||
FontFamily="{TemplateBinding FontFamily}"
|
FontFamily="{TemplateBinding FontFamily}"
|
||||||
FontSize="{TemplateBinding FontSize}"
|
FontSize="{TemplateBinding FontSize}"
|
||||||
FontWeight="{TemplateBinding FontWeight}"
|
FontWeight="{TemplateBinding FontWeight}"
|
||||||
Text="year" />
|
Text="{DynamicResource STRING_DATEPICKER_YEAR_TEXT}" />
|
||||||
<Rectangle
|
<Rectangle
|
||||||
x:Name="PART_FirstSpacer"
|
x:Name="PART_FirstSpacer"
|
||||||
Grid.Column="1"
|
Grid.Column="1"
|
||||||
Width="1"
|
Width="1"
|
||||||
Margin="0,4"
|
Height="{TemplateBinding Height}"
|
||||||
|
MinHeight="{TemplateBinding MinHeight}"
|
||||||
HorizontalAlignment="Center"
|
HorizontalAlignment="Center"
|
||||||
Fill="{DynamicResource DateTimePickerSeparatorBackground}" />
|
Fill="{DynamicResource DateTimePickerSeparatorBackground}" />
|
||||||
<Rectangle
|
<Rectangle
|
||||||
x:Name="PART_SecondSpacer"
|
x:Name="PART_SecondSpacer"
|
||||||
Grid.Column="3"
|
Grid.Column="3"
|
||||||
Width="1"
|
Width="1"
|
||||||
Margin="0,4"
|
Height="{TemplateBinding Height}"
|
||||||
|
MinHeight="{TemplateBinding MinHeight}"
|
||||||
HorizontalAlignment="Center"
|
HorizontalAlignment="Center"
|
||||||
Fill="{DynamicResource DateTimePickerSeparatorBackground}" />
|
Fill="{DynamicResource DateTimePickerSeparatorBackground}" />
|
||||||
</Grid>
|
</Grid>
|
||||||
@@ -255,10 +258,10 @@
|
|||||||
<Style Selector="^:hasnodate /template/ Button#PART_FlyoutButton TextBlock">
|
<Style Selector="^:hasnodate /template/ Button#PART_FlyoutButton TextBlock">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource DateTimePickerEmptyForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource DateTimePickerEmptyForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Large /template/ Button#PART_FlyoutButton">
|
<Style Selector="^.Large">
|
||||||
<Setter Property="MinHeight" Value="{DynamicResource DateTimePickerButtonLargeHeight}" />
|
<Setter Property="MinHeight" Value="{DynamicResource DateTimePickerButtonLargeHeight}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Small /template/ Button#PART_FlyoutButton">
|
<Style Selector="^.Small">
|
||||||
<Setter Property="MinHeight" Value="{DynamicResource DateTimePickerButtonSmallHeight}" />
|
<Setter Property="MinHeight" Value="{DynamicResource DateTimePickerButtonSmallHeight}" />
|
||||||
</Style>
|
</Style>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
|
|||||||
@@ -6,7 +6,8 @@
|
|||||||
|
|
||||||
<ControlTheme x:Key="DateTimePickerFlyoutButton" TargetType="Button">
|
<ControlTheme x:Key="DateTimePickerFlyoutButton" TargetType="Button">
|
||||||
<Setter Property="RenderTransform" Value="none" />
|
<Setter Property="RenderTransform" Value="none" />
|
||||||
<Setter Property="Button.VerticalAlignment" Value="Stretch" />
|
<Setter Property="BackgroundSizing" Value="OuterBorderEdge" />
|
||||||
|
<Setter Property="VerticalAlignment" Value="Stretch" />
|
||||||
<Setter Property="Template">
|
<Setter Property="Template">
|
||||||
<ControlTemplate>
|
<ControlTemplate>
|
||||||
<ContentPresenter
|
<ContentPresenter
|
||||||
@@ -14,6 +15,7 @@
|
|||||||
HorizontalContentAlignment="Stretch"
|
HorizontalContentAlignment="Stretch"
|
||||||
VerticalContentAlignment="Stretch"
|
VerticalContentAlignment="Stretch"
|
||||||
Background="{TemplateBinding Background}"
|
Background="{TemplateBinding Background}"
|
||||||
|
BackgroundSizing="{TemplateBinding BackgroundSizing}"
|
||||||
BorderBrush="{TemplateBinding BorderBrush}"
|
BorderBrush="{TemplateBinding BorderBrush}"
|
||||||
BorderThickness="{TemplateBinding BorderThickness}"
|
BorderThickness="{TemplateBinding BorderThickness}"
|
||||||
Content="{TemplateBinding Content}"
|
Content="{TemplateBinding Content}"
|
||||||
|
|||||||
@@ -4,25 +4,29 @@
|
|||||||
x:CompileBindings="True">
|
x:CompileBindings="True">
|
||||||
<!-- Add Resources Here -->
|
<!-- Add Resources Here -->
|
||||||
<ControlTheme x:Key="{x:Type DropDownButton}" TargetType="DropDownButton">
|
<ControlTheme x:Key="{x:Type DropDownButton}" TargetType="DropDownButton">
|
||||||
<Setter Property="DropDownButton.Background" Value="{DynamicResource ButtonDefaultBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonDefaultBackground}" />
|
||||||
<Setter Property="DropDownButton.Foreground" Value="{DynamicResource ButtonDefaultPrimaryForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultPrimaryForeground}" />
|
||||||
<Setter Property="DropDownButton.BorderBrush" Value="{DynamicResource ButtonDefaultBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultBorderBrush}" />
|
||||||
<Setter Property="DropDownButton.CornerRadius" Value="{DynamicResource ButtonCornerRadius}" />
|
<Setter Property="CornerRadius" Value="{DynamicResource ButtonCornerRadius}" />
|
||||||
<Setter Property="DropDownButton.BorderThickness" Value="{DynamicResource ButtonBorderThickness}" />
|
<Setter Property="BorderThickness" Value="{DynamicResource ButtonBorderThickness}" />
|
||||||
<Setter Property="DropDownButton.Padding" Value="{DynamicResource ButtonDefaultPadding}" />
|
<Setter Property="Padding" Value="{DynamicResource ButtonDefaultPadding}" />
|
||||||
<Setter Property="DropDownButton.RenderTransform" Value="none" />
|
<Setter Property="RenderTransform" Value="none" />
|
||||||
<Setter Property="DropDownButton.FontSize" Value="{DynamicResource ButtonDefaultFontSize}" />
|
<Setter Property="HorizontalAlignment" Value="Center" />
|
||||||
<Setter Property="DropDownButton.FontWeight" Value="{DynamicResource ButtonDefaultFontWeight}" />
|
<Setter Property="VerticalAlignment" Value="Center" />
|
||||||
<Setter Property="DropDownButton.HorizontalContentAlignment" Value="Center" />
|
<Setter Property="FontSize" Value="{DynamicResource ButtonDefaultFontSize}" />
|
||||||
<Setter Property="DropDownButton.VerticalContentAlignment" Value="Center" />
|
<Setter Property="FontWeight" Value="{DynamicResource ButtonDefaultFontWeight}" />
|
||||||
<Setter Property="DropDownButton.MinHeight" Value="12" />
|
<Setter Property="HorizontalContentAlignment" Value="Center" />
|
||||||
<Setter Property="DropDownButton.Cursor" Value="Hand" />
|
<Setter Property="VerticalContentAlignment" Value="Center" />
|
||||||
|
<Setter Property="BackgroundSizing" Value="OuterBorderEdge" />
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource ButtonDefaultHeight}" />
|
||||||
|
<Setter Property="Cursor" Value="Hand" />
|
||||||
<Setter Property="Template">
|
<Setter Property="Template">
|
||||||
<ControlTemplate TargetType="DropDownButton">
|
<ControlTemplate TargetType="DropDownButton">
|
||||||
<Border
|
<Border
|
||||||
x:Name="RootBorder"
|
x:Name="RootBorder"
|
||||||
Background="{TemplateBinding Background}"
|
HorizontalAlignment="Stretch"
|
||||||
BorderBrush="{TemplateBinding BorderBrush}"
|
VerticalAlignment="Stretch"
|
||||||
|
BackgroundSizing="{TemplateBinding BackgroundSizing}"
|
||||||
BorderThickness="{TemplateBinding BorderThickness}"
|
BorderThickness="{TemplateBinding BorderThickness}"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
CornerRadius="{TemplateBinding CornerRadius}">
|
CornerRadius="{TemplateBinding CornerRadius}">
|
||||||
@@ -35,6 +39,7 @@
|
|||||||
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
||||||
Content="{TemplateBinding Content}"
|
Content="{TemplateBinding Content}"
|
||||||
ContentTemplate="{TemplateBinding ContentTemplate}"
|
ContentTemplate="{TemplateBinding ContentTemplate}"
|
||||||
|
Foreground="{TemplateBinding Foreground}"
|
||||||
RecognizesAccessKey="True" />
|
RecognizesAccessKey="True" />
|
||||||
<PathIcon
|
<PathIcon
|
||||||
x:Name="DropDownGlyph"
|
x:Name="DropDownGlyph"
|
||||||
@@ -57,6 +62,21 @@
|
|||||||
<Setter Property="RenderTransform" Value="scale(0.98)" />
|
<Setter Property="RenderTransform" Value="scale(0.98)" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
|
<Style Selector="^ /template/ Border#RootBorder">
|
||||||
|
<Setter Property="BorderBrush" Value="{TemplateBinding BorderBrush}" />
|
||||||
|
<Setter Property="Background" Value="{TemplateBinding Background}" />
|
||||||
|
</Style>
|
||||||
|
|
||||||
|
<Style Selector="^:pointerover /template/ Border#RootBorder">
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultPointeroverBorderBrush}" />
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonDefaultPointeroverBackground}" />
|
||||||
|
</Style>
|
||||||
|
|
||||||
|
<Style Selector="^:pressed /template/ Border#RootBorder">
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultPressedBorderBrush}" />
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonDefaultPressedBackground}" />
|
||||||
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^.Primary">
|
<Style Selector="^.Primary">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultPrimaryForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultPrimaryForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
@@ -76,166 +96,178 @@
|
|||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDangerForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDangerForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^:pointerover">
|
<Style Selector="^:pointerover /template/ Border#RootBorder">
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultPointeroverBorderBrush}" />
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonDefaultPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonDefaultPointeroverBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ Border#RootBorder">
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultPressedBorderBrush}" />
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonDefaultPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonDefaultPressedBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^:disabled">
|
<Style Selector="^:disabled">
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultDisabledBorderBrush}" />
|
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonDefaultDisabledBackground}" />
|
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
<Style Selector="^:disabled /template/ Border#RootBorder">
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultDisabledBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^.Large">
|
<Style Selector="^.Large">
|
||||||
<Setter Property="Padding" Value="{DynamicResource ButtonLargePadding}" />
|
<Setter Property="Padding" Value="{DynamicResource ButtonLargePadding}" />
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource ButtonLargeHeight}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Small">
|
<Style Selector="^.Small">
|
||||||
<Setter Property="Padding" Value="{DynamicResource ButtonSmallPadding}" />
|
<Setter Property="Padding" Value="{DynamicResource ButtonSmallPadding}" />
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource ButtonSmallHeight}" />
|
||||||
</Style>
|
</Style>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
|
|
||||||
<ControlTheme x:Key="SolidDropDownButton" TargetType="DropDownButton">
|
<ControlTheme
|
||||||
<Setter Property="DropDownButton.Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
x:Key="SolidDropDownButton"
|
||||||
<Setter Property="DropDownButton.Background" Value="{DynamicResource ButtonSolidPrimaryBackground}" />
|
BasedOn="{StaticResource {x:Type DropDownButton}}"
|
||||||
<Setter Property="DropDownButton.BorderBrush" Value="{DynamicResource ButtonSolidPrimaryBorderBrush}" />
|
TargetType="DropDownButton">
|
||||||
<Setter Property="DropDownButton.CornerRadius" Value="{DynamicResource ButtonCornerRadius}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
<Setter Property="DropDownButton.BorderThickness" Value="{DynamicResource ButtonBorderThickness}" />
|
<Style Selector="^ /template/ Border#RootBorder">
|
||||||
<Setter Property="DropDownButton.Padding" Value="{DynamicResource ButtonDefaultPadding}" />
|
|
||||||
<Setter Property="DropDownButton.RenderTransform" Value="none" />
|
|
||||||
<Setter Property="DropDownButton.FontSize" Value="{DynamicResource ButtonDefaultFontSize}" />
|
|
||||||
<Setter Property="DropDownButton.FontWeight" Value="{DynamicResource ButtonDefaultFontWeight}" />
|
|
||||||
<Setter Property="DropDownButton.HorizontalContentAlignment" Value="Center" />
|
|
||||||
<Setter Property="DropDownButton.VerticalContentAlignment" Value="Center" />
|
|
||||||
<Setter Property="DropDownButton.MinHeight" Value="12" />
|
|
||||||
<Setter Property="DropDownButton.Cursor" Value="Hand" />
|
|
||||||
<Setter Property="Template">
|
|
||||||
<ControlTemplate TargetType="DropDownButton">
|
|
||||||
<Border
|
|
||||||
x:Name="RootBorder"
|
|
||||||
Background="{TemplateBinding Background}"
|
|
||||||
BorderBrush="{TemplateBinding BorderBrush}"
|
|
||||||
BorderThickness="{TemplateBinding BorderThickness}"
|
|
||||||
ClipToBounds="True"
|
|
||||||
CornerRadius="{TemplateBinding CornerRadius}">
|
|
||||||
<Grid x:Name="InnerGrid" ColumnDefinitions="*,Auto">
|
|
||||||
<ContentPresenter
|
|
||||||
x:Name="PART_ContentPresenter"
|
|
||||||
Grid.Column="0"
|
|
||||||
Padding="{TemplateBinding Padding}"
|
|
||||||
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
|
||||||
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
|
||||||
Content="{TemplateBinding Content}"
|
|
||||||
ContentTemplate="{TemplateBinding ContentTemplate}"
|
|
||||||
RecognizesAccessKey="True" />
|
|
||||||
<PathIcon
|
|
||||||
x:Name="DropDownGlyph"
|
|
||||||
Grid.Column="1"
|
|
||||||
Width="12"
|
|
||||||
Height="12"
|
|
||||||
Margin="0,0,8,0"
|
|
||||||
HorizontalAlignment="Right"
|
|
||||||
VerticalAlignment="Center"
|
|
||||||
Data="{DynamicResource DropDownButtonIconGlyph}"
|
|
||||||
Foreground="{TemplateBinding Foreground}"
|
|
||||||
IsHitTestVisible="False"
|
|
||||||
UseLayoutRounding="False" />
|
|
||||||
</Grid>
|
|
||||||
</Border>
|
|
||||||
</ControlTemplate>
|
|
||||||
</Setter>
|
|
||||||
|
|
||||||
<Style Selector="^:pressed">
|
|
||||||
<Setter Property="RenderTransform" Value="scale(0.98)" />
|
|
||||||
</Style>
|
|
||||||
|
|
||||||
<Style Selector="^.Primary">
|
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryBorderBrush}" />
|
||||||
<Style Selector="^:pointerover">
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ Border#RootBorder">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPointeroverBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPointeroverBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pressed /template/ Border#RootBorder">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPressedBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPressedBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^.Primary">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
|
<Style Selector="^ /template/ Border#RootBorder">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ Border#RootBorder">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPointeroverBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ Border#RootBorder">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Secondary">
|
<Style Selector="^.Secondary">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryBackground}" />
|
<Style Selector="^ /template/ Border#RootBorder">
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSecondaryBorderBrush}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryBackground}" />
|
||||||
<Style Selector="^:pointerover">
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSecondaryBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ Border#RootBorder">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSecondaryPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSecondaryPointeroverBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ Border#RootBorder">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSecondaryPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSecondaryPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Tertiary">
|
<Style Selector="^.Tertiary">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryBackground}" />
|
<Style Selector="^ /template/ Border#RootBorder">
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidTertiaryBorderBrush}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryBackground}" />
|
||||||
<Style Selector="^:pointerover">
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidTertiaryBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ Border#RootBorder">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidTertiaryPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidTertiaryPointeroverBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ Border#RootBorder">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidTertiaryPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidTertiaryPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Success">
|
<Style Selector="^.Success">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessBackground}" />
|
<Style Selector="^ /template/ Border#RootBorder">
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSuccessBorderBrush}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessBackground}" />
|
||||||
<Style Selector="^:pointerover">
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSuccessBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ Border#RootBorder">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSuccessPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSuccessPointeroverBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ Border#RootBorder">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSuccessPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSuccessPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Warning">
|
<Style Selector="^.Warning">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningBackground}" />
|
<Style Selector="^ /template/ Border#RootBorder">
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidWarningBorderBrush}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningBackground}" />
|
||||||
<Style Selector="^:pointerover">
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidWarningBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ Border#RootBorder">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidWarningPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidWarningPointeroverBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ Border#RootBorder">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidWarningPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidWarningPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Danger">
|
<Style Selector="^.Danger">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerBackground}" />
|
<Style Selector="^ /template/ Border#RootBorder">
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidDangerBorderBrush}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerBackground}" />
|
||||||
<Style Selector="^:pointerover">
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidDangerBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ Border#RootBorder">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidDangerPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidDangerPointeroverBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ Border#RootBorder">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidDangerPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidDangerPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
|
<Style Selector="^:disabled /template/ Border#RootBorder">
|
||||||
<Style Selector="^:disabled">
|
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultDisabledBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultDisabledBorderBrush}" />
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonDefaultDisabledBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidDisabledBackground}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:disabled">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
||||||
|
</Style>
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme
|
||||||
|
x:Key="OutlineDropDownButton"
|
||||||
|
BasedOn="{StaticResource {x:Type DropDownButton}}"
|
||||||
|
TargetType="DropDownButton">
|
||||||
|
<Style Selector="^ /template/ Border#RootBorder">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonOutlineBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ Border#RootBorder">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonOutlinePointeroverBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pressed /template/ Border#RootBorder">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonOutlinePressedBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^.Success /template/ Border#RootBorder">
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineSuccessBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^.Warning /template/ Border#RootBorder">
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineWarningBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^.Danger /template/ Border#RootBorder">
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineDangerBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:disabled /template/ Border#RootBorder">
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineBorderBrush}" />
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonOutlineBackground}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:disabled">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
@@ -244,12 +276,13 @@
|
|||||||
x:Key="BorderlessDropDownButton"
|
x:Key="BorderlessDropDownButton"
|
||||||
BasedOn="{StaticResource {x:Type DropDownButton}}"
|
BasedOn="{StaticResource {x:Type DropDownButton}}"
|
||||||
TargetType="DropDownButton">
|
TargetType="DropDownButton">
|
||||||
<Setter Property="DropDownButton.Background" Value="Transparent" />
|
<Style Selector="^ /template/ Border#RootBorder">
|
||||||
<Setter Property="DropDownButton.BorderBrush" Value="Transparent" />
|
<Setter Property="Background" Value="Transparent" />
|
||||||
<Style Selector="^:disabled">
|
<Setter Property="BorderBrush" Value="Transparent" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:disabled /template/ Border#RootBorder">
|
||||||
<Setter Property="BorderBrush" Value="Transparent" />
|
<Setter Property="BorderBrush" Value="Transparent" />
|
||||||
<Setter Property="Background" Value="Transparent" />
|
<Setter Property="Background" Value="Transparent" />
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
|
||||||
</Style>
|
</Style>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
118
src/Semi.Avalonia/Controls/HyperlinkButton.axaml
Normal file
@@ -0,0 +1,118 @@
|
|||||||
|
<ResourceDictionary
|
||||||
|
x:CompileBindings="True"
|
||||||
|
xmlns="https://github.com/avaloniaui"
|
||||||
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
||||||
|
<ControlTheme TargetType="HyperlinkButton" x:Key="{x:Type HyperlinkButton}">
|
||||||
|
<Setter Property="Padding" Value="0,0,0,0" />
|
||||||
|
<Setter Property="HorizontalAlignment" Value="Left" />
|
||||||
|
<Setter Property="VerticalAlignment" Value="Top" />
|
||||||
|
<Setter Property="Cursor" Value="Hand" />
|
||||||
|
<Setter Property="HorizontalContentAlignment" Value="Left" />
|
||||||
|
<Setter Property="VerticalContentAlignment" Value="Center" />
|
||||||
|
<Setter Property="FontSize" Value="{DynamicResource HyperlinkButtonFontSize}" />
|
||||||
|
<Setter Property="MinHeight" Value="32" />
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource HyperlinkButtonForeground}" />
|
||||||
|
<Setter Property="Background" Value="{DynamicResource HyperlinkButtonDefaultBackground}" />
|
||||||
|
<Setter Property="Template">
|
||||||
|
<ControlTemplate TargetType="HyperlinkButton">
|
||||||
|
<Grid ColumnDefinitions="Auto,*" x:Name="RootGrid">
|
||||||
|
<Grid
|
||||||
|
Grid.Column="0"
|
||||||
|
IsVisible="False"
|
||||||
|
Margin="0,0,8,0"
|
||||||
|
VerticalAlignment="Center"
|
||||||
|
x:Name="IconGrid">
|
||||||
|
<Border
|
||||||
|
Background="{DynamicResource HyperlinkButtonDefaultBackground}"
|
||||||
|
Height="{DynamicResource HyperlinkButtonIconHeight}"
|
||||||
|
Opacity="0"
|
||||||
|
UseLayoutRounding="False"
|
||||||
|
Width="{DynamicResource HyperlinkButtonIconWidth}"
|
||||||
|
x:Name="BackgroundRectangle" />
|
||||||
|
<PathIcon
|
||||||
|
Data="{DynamicResource HyperlinkButtonLinkGlyph}"
|
||||||
|
Foreground="{DynamicResource HyperlinkButtonForeground}"
|
||||||
|
Height="{DynamicResource HyperlinkButtonLinkGlyphHeight}"
|
||||||
|
Name="LinkGlyph"
|
||||||
|
VerticalAlignment="Center"
|
||||||
|
Width="{DynamicResource HyperlinkButtonLinkGlyphWidth}" />
|
||||||
|
</Grid>
|
||||||
|
<ContentPresenter
|
||||||
|
Content="{TemplateBinding Content}"
|
||||||
|
ContentTemplate="{TemplateBinding ContentTemplate}"
|
||||||
|
Cursor="{TemplateBinding Cursor}"
|
||||||
|
Grid.Column="1"
|
||||||
|
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
|
||||||
|
Padding="0,0,0,0"
|
||||||
|
RecognizesAccessKey="True"
|
||||||
|
VerticalAlignment="Center"
|
||||||
|
x:Name="ContentPresenter" />
|
||||||
|
</Grid>
|
||||||
|
</ControlTemplate>
|
||||||
|
</Setter>
|
||||||
|
|
||||||
|
<Style Selector="^:pointerover">
|
||||||
|
<Style Selector="^ /template/ PathIcon#LinkGlyph">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource HyperlinkButtonOverForeground}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^ /template/ ContentPresenter#ContentPresenter">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource HyperlinkButtonOverForeground}" />
|
||||||
|
</Style>
|
||||||
|
</Style>
|
||||||
|
|
||||||
|
<!-- Unvisited Pressed State -->
|
||||||
|
<Style Selector="^:pressed">
|
||||||
|
<Setter Property="RenderTransform" Value="scale(0.98)" />
|
||||||
|
</Style>
|
||||||
|
|
||||||
|
<!-- Unvisited Disabled state -->
|
||||||
|
<Style Selector="^:disabled">
|
||||||
|
<Style Selector="^ /template/ PathIcon#LinkGlyph">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource HyperlinkButtonDisabledForeground}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^ /template/ ContentPresenter#ContentPresenter">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource HyperlinkButtonDisabledForeground}" />
|
||||||
|
</Style>
|
||||||
|
</Style>
|
||||||
|
|
||||||
|
<Style Selector="^:visited">
|
||||||
|
<Style Selector="^ /template/ PathIcon#LinkGlyph">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource HyperlinkButtonVisitedForeground}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^ /template/ ContentPresenter#ContentPresenter">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource HyperlinkButtonVisitedForeground}" />
|
||||||
|
</Style>
|
||||||
|
|
||||||
|
<!-- Visited Pointerover State -->
|
||||||
|
<Style Selector="^:pointerover">
|
||||||
|
<Style Selector="^ /template/ PathIcon#LinkGlyph">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource HyperlinkButtonOverForeground}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^ /template/ ContentPresenter#ContentPresenter">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource HyperlinkButtonOverForeground}" />
|
||||||
|
</Style>
|
||||||
|
</Style>
|
||||||
|
|
||||||
|
<!-- Visited Pressed State -->
|
||||||
|
<Style Selector="^:pressed">
|
||||||
|
<Setter Property="RenderTransform" Value="scale(0.98)" />
|
||||||
|
</Style>
|
||||||
|
|
||||||
|
<!-- Visited Disabled State -->
|
||||||
|
<Style Selector="^:disabled">
|
||||||
|
<Style Selector="^ /template/ PathIcon#LinkGlyph">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource HyperlinkButtonDisabledForeground}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^ /template/ ContentPresenter#ContentPresenter">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource HyperlinkButtonDisabledForeground}" />
|
||||||
|
</Style>
|
||||||
|
</Style>
|
||||||
|
</Style>
|
||||||
|
|
||||||
|
<Style Selector="^.WithIcon">
|
||||||
|
<Style Selector="^ /template/ Grid#IconGrid">
|
||||||
|
<Setter Property="IsVisible" Value="True" />
|
||||||
|
</Style>
|
||||||
|
</Style>
|
||||||
|
</ControlTheme>
|
||||||
|
</ResourceDictionary>
|
||||||
@@ -131,13 +131,13 @@
|
|||||||
<ColumnDefinition Width="200" SharedSizeGroup="Size" />
|
<ColumnDefinition Width="200" SharedSizeGroup="Size" />
|
||||||
</Grid.ColumnDefinitions>
|
</Grid.ColumnDefinitions>
|
||||||
<GridSplitter Grid.Column="1" Width="1" />
|
<GridSplitter Grid.Column="1" Width="1" />
|
||||||
<TextBlock Grid.Column="2" Text="Name" />
|
<TextBlock Grid.Column="2" Text="{DynamicResource STRING_CHOOSER_NAME_COLUMN}" />
|
||||||
<GridSplitter Grid.Column="3" Width="1" />
|
<GridSplitter Grid.Column="3" Width="1" />
|
||||||
<TextBlock Grid.Column="4" Text="Date Modified" />
|
<TextBlock Grid.Column="4" Text="{DynamicResource STRING_CHOOSER_DATEMODIFIED_COLUMN}" />
|
||||||
<GridSplitter Grid.Column="5" Width="1" />
|
<GridSplitter Grid.Column="5" Width="1" />
|
||||||
<TextBlock Grid.Column="6" Text="Type" />
|
<TextBlock Grid.Column="6" Text="{DynamicResource STRING_CHOOSER_TYPE_COLUMN}" />
|
||||||
<GridSplitter Grid.Column="7" Width="1" />
|
<GridSplitter Grid.Column="7" Width="1" />
|
||||||
<TextBlock Grid.Column="8" Text="Size" />
|
<TextBlock Grid.Column="8" Text="{DynamicResource STRING_CHOOSER_SIZE_COLUMN}" />
|
||||||
</Grid>
|
</Grid>
|
||||||
<ListBox
|
<ListBox
|
||||||
Name="PART_Files"
|
Name="PART_Files"
|
||||||
|
|||||||
@@ -27,10 +27,10 @@
|
|||||||
RenderTransform="{x:Null}">
|
RenderTransform="{x:Null}">
|
||||||
<RepeatButton.IsVisible>
|
<RepeatButton.IsVisible>
|
||||||
<MultiBinding Converter="{x:Static converters:MenuScrollingVisibilityConverter.Instance}" ConverterParameter="0">
|
<MultiBinding Converter="{x:Static converters:MenuScrollingVisibilityConverter.Instance}" ConverterParameter="0">
|
||||||
<ReflectionBinding Path="VerticalScrollBarVisibility" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="VerticalScrollBarVisibility" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
<ReflectionBinding Path="Offset.Y" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="Offset.Y" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
<ReflectionBinding Path="Extent.Height" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="Extent.Height" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
<ReflectionBinding Path="Viewport.Height" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="Viewport.Height" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
</MultiBinding>
|
</MultiBinding>
|
||||||
</RepeatButton.IsVisible>
|
</RepeatButton.IsVisible>
|
||||||
<PathIcon
|
<PathIcon
|
||||||
@@ -50,10 +50,10 @@
|
|||||||
RenderTransform="{x:Null}">
|
RenderTransform="{x:Null}">
|
||||||
<RepeatButton.IsVisible>
|
<RepeatButton.IsVisible>
|
||||||
<MultiBinding Converter="{x:Static converters:MenuScrollingVisibilityConverter.Instance}" ConverterParameter="100">
|
<MultiBinding Converter="{x:Static converters:MenuScrollingVisibilityConverter.Instance}" ConverterParameter="100">
|
||||||
<ReflectionBinding Path="VerticalScrollBarVisibility" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="VerticalScrollBarVisibility" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
<ReflectionBinding Path="Offset.Y" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="Offset.Y" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
<ReflectionBinding Path="Extent.Height" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="Extent.Height" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
<ReflectionBinding Path="Viewport.Height" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="Viewport.Height" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
</MultiBinding>
|
</MultiBinding>
|
||||||
</RepeatButton.IsVisible>
|
</RepeatButton.IsVisible>
|
||||||
<PathIcon
|
<PathIcon
|
||||||
@@ -120,14 +120,26 @@
|
|||||||
CornerRadius="{TemplateBinding CornerRadius}">
|
CornerRadius="{TemplateBinding CornerRadius}">
|
||||||
<Grid>
|
<Grid>
|
||||||
<Grid.ColumnDefinitions>
|
<Grid.ColumnDefinitions>
|
||||||
|
<ColumnDefinition Width="Auto" SharedSizeGroup="ToggleIcon" />
|
||||||
<ColumnDefinition Width="Auto" SharedSizeGroup="MenuItemIcon" />
|
<ColumnDefinition Width="Auto" SharedSizeGroup="MenuItemIcon" />
|
||||||
<ColumnDefinition Width="*" />
|
<ColumnDefinition Width="*" />
|
||||||
<ColumnDefinition Width="Auto" SharedSizeGroup="MenuItemIGT" />
|
<ColumnDefinition Width="Auto" SharedSizeGroup="MenuItemIGT" />
|
||||||
<ColumnDefinition Width="Auto" SharedSizeGroup="MenuItemChevron" />
|
<ColumnDefinition Width="Auto" SharedSizeGroup="MenuItemChevron" />
|
||||||
</Grid.ColumnDefinitions>
|
</Grid.ColumnDefinitions>
|
||||||
|
|
||||||
|
<ContentControl
|
||||||
|
Name="PART_ToggleIconPresenter"
|
||||||
|
Grid.Column="0"
|
||||||
|
Width="16"
|
||||||
|
Height="16"
|
||||||
|
Margin="{DynamicResource MenuItemIconMargin}"
|
||||||
|
HorizontalAlignment="Center"
|
||||||
|
VerticalAlignment="Center"
|
||||||
|
IsVisible="False" />
|
||||||
|
|
||||||
<Viewbox
|
<Viewbox
|
||||||
Name="PART_IconPresenter"
|
Name="PART_IconPresenter"
|
||||||
|
Grid.Column="1"
|
||||||
Width="16"
|
Width="16"
|
||||||
Height="16"
|
Height="16"
|
||||||
Margin="{DynamicResource MenuItemIconMargin}"
|
Margin="{DynamicResource MenuItemIconMargin}"
|
||||||
@@ -143,14 +155,15 @@
|
|||||||
|
|
||||||
<ContentPresenter
|
<ContentPresenter
|
||||||
Name="PART_HeaderPresenter"
|
Name="PART_HeaderPresenter"
|
||||||
Grid.Column="1"
|
Grid.Column="2"
|
||||||
HorizontalAlignment="Stretch"
|
HorizontalAlignment="Stretch"
|
||||||
VerticalAlignment="Center"
|
VerticalAlignment="Center"
|
||||||
Content="{TemplateBinding Header}"
|
Content="{TemplateBinding Header}"
|
||||||
|
ContentTemplate="{TemplateBinding HeaderTemplate}"
|
||||||
RecognizesAccessKey="True" />
|
RecognizesAccessKey="True" />
|
||||||
<TextBlock
|
<TextBlock
|
||||||
x:Name="PART_InputGestureText"
|
x:Name="PART_InputGestureText"
|
||||||
Grid.Column="2"
|
Grid.Column="3"
|
||||||
Margin="{DynamicResource MenuItemInputGestureTextMargin}"
|
Margin="{DynamicResource MenuItemInputGestureTextMargin}"
|
||||||
HorizontalAlignment="Right"
|
HorizontalAlignment="Right"
|
||||||
VerticalAlignment="Center"
|
VerticalAlignment="Center"
|
||||||
@@ -159,7 +172,7 @@
|
|||||||
Converter={StaticResource KeyGestureConverter}}" />
|
Converter={StaticResource KeyGestureConverter}}" />
|
||||||
<PathIcon
|
<PathIcon
|
||||||
Name="PART_ExpandIcon"
|
Name="PART_ExpandIcon"
|
||||||
Grid.Column="3"
|
Grid.Column="4"
|
||||||
Width="8"
|
Width="8"
|
||||||
Height="8"
|
Height="8"
|
||||||
Margin="{DynamicResource MenuItemExpandIconMargin}"
|
Margin="{DynamicResource MenuItemExpandIconMargin}"
|
||||||
@@ -244,6 +257,27 @@
|
|||||||
</ControlTemplate>
|
</ControlTemplate>
|
||||||
</Setter>
|
</Setter>
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
|
<Style Selector="^:checked:toggle /template/ ContentControl#PART_ToggleIconPresenter">
|
||||||
|
<Setter Property="IsVisible" Value="True" />
|
||||||
|
<Setter Property="Content">
|
||||||
|
<Template>
|
||||||
|
<PathIcon
|
||||||
|
Foreground="{Binding $parent[MenuItem].Foreground}"
|
||||||
|
Data="{StaticResource MenuCheckGlyph}" />
|
||||||
|
</Template>
|
||||||
|
</Setter>
|
||||||
|
</Style>
|
||||||
|
|
||||||
|
<Style Selector="^:checked:radio /template/ ContentControl#PART_ToggleIconPresenter">
|
||||||
|
<Setter Property="IsVisible" Value="True" />
|
||||||
|
<Setter Property="Content">
|
||||||
|
<Template>
|
||||||
|
<Ellipse Fill="{Binding $parent[MenuItem].Foreground}"
|
||||||
|
Margin="4" Width="8" Height="8" />
|
||||||
|
</Template>
|
||||||
|
</Setter>
|
||||||
|
</Style>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
|
|
||||||
<ControlTheme x:Key="TopLevelMenuItem" TargetType="MenuItem">
|
<ControlTheme x:Key="TopLevelMenuItem" TargetType="MenuItem">
|
||||||
@@ -267,6 +301,7 @@
|
|||||||
HorizontalAlignment="Stretch"
|
HorizontalAlignment="Stretch"
|
||||||
VerticalAlignment="Center"
|
VerticalAlignment="Center"
|
||||||
Content="{TemplateBinding Header}"
|
Content="{TemplateBinding Header}"
|
||||||
|
ContentTemplate="{TemplateBinding HeaderTemplate}"
|
||||||
RecognizesAccessKey="True" />
|
RecognizesAccessKey="True" />
|
||||||
<Popup
|
<Popup
|
||||||
Name="PART_Popup"
|
Name="PART_Popup"
|
||||||
|
|||||||
@@ -4,8 +4,10 @@
|
|||||||
x:CompileBindings="True">
|
x:CompileBindings="True">
|
||||||
<!-- Add Resources Here -->
|
<!-- Add Resources Here -->
|
||||||
<ControlTheme x:Key="{x:Type NumericUpDown}" TargetType="NumericUpDown">
|
<ControlTheme x:Key="{x:Type NumericUpDown}" TargetType="NumericUpDown">
|
||||||
|
<Setter Property="NumericUpDown.VerticalAlignment" Value="Center" />
|
||||||
<Setter Property="NumericUpDown.VerticalContentAlignment" Value="Center" />
|
<Setter Property="NumericUpDown.VerticalContentAlignment" Value="Center" />
|
||||||
<Setter Property="NumericUpDown.CornerRadius" Value="{DynamicResource NumericUpDownCornerRadius}" />
|
<Setter Property="NumericUpDown.CornerRadius" Value="{DynamicResource NumericUpDownCornerRadius}" />
|
||||||
|
<Setter Property="NumericUpDown.MinHeight" Value="{DynamicResource NumericUpDownDefaultHeight}" />
|
||||||
<Setter Property="NumericUpDown.Template">
|
<Setter Property="NumericUpDown.Template">
|
||||||
<ControlTemplate TargetType="NumericUpDown">
|
<ControlTemplate TargetType="NumericUpDown">
|
||||||
<DataValidationErrors>
|
<DataValidationErrors>
|
||||||
@@ -23,29 +25,32 @@
|
|||||||
<TextBox
|
<TextBox
|
||||||
Name="PART_TextBox"
|
Name="PART_TextBox"
|
||||||
Height="{TemplateBinding Height}"
|
Height="{TemplateBinding Height}"
|
||||||
MinHeight="{DynamicResource NumericUpDownWrapperDefaultHeight}"
|
MinHeight="{TemplateBinding MinHeight}"
|
||||||
|
VerticalAlignment="Stretch"
|
||||||
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
||||||
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
||||||
AcceptsReturn="False"
|
AcceptsReturn="False"
|
||||||
CornerRadius="{TemplateBinding CornerRadius}"
|
CornerRadius="{TemplateBinding CornerRadius}"
|
||||||
DataValidationErrors.Errors="{ReflectionBinding $parent[NumericUpDown].(DataValidationErrors.Errors)}"
|
DataValidationErrors.Errors="{Binding $parent[NumericUpDown].(DataValidationErrors.Errors)}"
|
||||||
FontSize="{TemplateBinding FontSize}"
|
FontSize="{TemplateBinding FontSize}"
|
||||||
Foreground="{TemplateBinding Foreground}"
|
Foreground="{TemplateBinding Foreground}"
|
||||||
IsReadOnly="{TemplateBinding IsReadOnly}"
|
IsReadOnly="{TemplateBinding IsReadOnly}"
|
||||||
Text="{TemplateBinding Text}"
|
Text="{TemplateBinding Text}"
|
||||||
TextWrapping="NoWrap"
|
TextWrapping="NoWrap"
|
||||||
Theme="{DynamicResource NonErrorTextBox}"
|
Theme="{DynamicResource NonErrorTextBox}"
|
||||||
|
InnerLeftContent="{TemplateBinding InnerLeftContent}"
|
||||||
|
InnerRightContent="{TemplateBinding InnerRightContent}"
|
||||||
Watermark="{TemplateBinding Watermark}" />
|
Watermark="{TemplateBinding Watermark}" />
|
||||||
</ButtonSpinner>
|
</ButtonSpinner>
|
||||||
</DataValidationErrors>
|
</DataValidationErrors>
|
||||||
</ControlTemplate>
|
</ControlTemplate>
|
||||||
</Setter>
|
</Setter>
|
||||||
|
|
||||||
<Style Selector="^.Large /template/ TextBox#PART_TextBox">
|
<Style Selector="^.Large">
|
||||||
<Setter Property="MinHeight" Value="{DynamicResource NumericUpDownWrapperLargeHeight}" />
|
<Setter Property="MinHeight" Value="{DynamicResource NumericUpDownLargeHeight}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Small /template/ TextBox#PART_TextBox">
|
<Style Selector="^.Small">
|
||||||
<Setter Property="MinHeight" Value="{DynamicResource NumericUpDownWrapperSmallHeight}" />
|
<Setter Property="MinHeight" Value="{DynamicResource NumericUpDownSmallHeight}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^:error">
|
<Style Selector="^:error">
|
||||||
|
|||||||
@@ -159,7 +159,7 @@
|
|||||||
<TextBlock.Text>
|
<TextBlock.Text>
|
||||||
<MultiBinding Converter="{StaticResource StringFormatConverter}">
|
<MultiBinding Converter="{StaticResource StringFormatConverter}">
|
||||||
<TemplateBinding Property="ProgressTextFormat" />
|
<TemplateBinding Property="ProgressTextFormat" />
|
||||||
<ReflectionBinding Path="Value" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="Value" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
<TemplateBinding Property="Percentage" />
|
<TemplateBinding Property="Percentage" />
|
||||||
<TemplateBinding Property="Minimum" />
|
<TemplateBinding Property="Minimum" />
|
||||||
<TemplateBinding Property="Maximum" />
|
<TemplateBinding Property="Maximum" />
|
||||||
@@ -185,6 +185,10 @@
|
|||||||
<Style Selector="^.Warning">
|
<Style Selector="^.Warning">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ProgressBarWarningForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ProgressBarWarningForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
<Style Selector="^.Danger">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource ProgressBarDangerForeground}" />
|
||||||
|
</Style>
|
||||||
|
<!-- Error style is obsolete, use Danger instead -->
|
||||||
<Style Selector="^.Error">
|
<Style Selector="^.Error">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ProgressBarErrorForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ProgressBarErrorForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
@@ -411,6 +415,10 @@
|
|||||||
<Style Selector="^.Warning">
|
<Style Selector="^.Warning">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ProgressBarWarningForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ProgressBarWarningForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
<Style Selector="^.Danger">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource ProgressBarDangerForeground}" />
|
||||||
|
</Style>
|
||||||
|
<!-- Error style is obsolete, use Danger instead -->
|
||||||
<Style Selector="^.Error">
|
<Style Selector="^.Error">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ProgressBarErrorForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ProgressBarErrorForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|||||||
@@ -28,20 +28,26 @@
|
|||||||
<Setter Property="IsTabStop" Value="False" />
|
<Setter Property="IsTabStop" Value="False" />
|
||||||
<Setter Property="IsHitTestVisible" Value="False" />
|
<Setter Property="IsHitTestVisible" Value="False" />
|
||||||
<Setter Property="Height" Value="100" />
|
<Setter Property="Height" Value="100" />
|
||||||
<Setter Property="Background" Value="{DynamicResource RefreshContainerIconBackground}" />
|
<Setter Property="Background" Value="{DynamicResource RefreshVisualizerIconBackground}" />
|
||||||
<Setter Property="Foreground" Value="{DynamicResource RefreshContainerIconForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource RefreshVisualizerIconForeground}" />
|
||||||
|
<Setter Property="Content">
|
||||||
|
<Template>
|
||||||
|
<Arc
|
||||||
|
Name="PART_Icon"
|
||||||
|
Width="{DynamicResource RefreshVisualizerIconSize}"
|
||||||
|
Height="{DynamicResource RefreshVisualizerIconSize}"
|
||||||
|
StartAngle="0"
|
||||||
|
Stroke="{DynamicResource RefreshVisualizerIconForeground}"
|
||||||
|
StrokeThickness="3"
|
||||||
|
StrokeLineCap="Round"
|
||||||
|
SweepAngle="270" />
|
||||||
|
</Template>
|
||||||
|
</Setter>
|
||||||
<Setter Property="Template">
|
<Setter Property="Template">
|
||||||
<ControlTemplate>
|
<ControlTemplate>
|
||||||
<Grid
|
<Grid Name="PART_Root"
|
||||||
Name="PART_Root"
|
MinHeight="80"
|
||||||
MinHeight="80"
|
Background="{TemplateBinding Background}" />
|
||||||
Background="{TemplateBinding Background}">
|
|
||||||
<Grid.Styles>
|
|
||||||
<Style Selector="PathIcon#PART_Icon">
|
|
||||||
<Setter Property="Data" Value="{DynamicResource RefreshContainerIconGlyph}" />
|
|
||||||
</Style>
|
|
||||||
</Grid.Styles>
|
|
||||||
</Grid>
|
|
||||||
</ControlTemplate>
|
</ControlTemplate>
|
||||||
</Setter>
|
</Setter>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
|
|||||||
@@ -3,28 +3,32 @@
|
|||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
x:CompileBindings="True">
|
x:CompileBindings="True">
|
||||||
<ControlTheme x:Key="{x:Type RepeatButton}" TargetType="RepeatButton">
|
<ControlTheme x:Key="{x:Type RepeatButton}" TargetType="RepeatButton">
|
||||||
<Setter Property="RepeatButton.Background" Value="{DynamicResource ButtonDefaultBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonDefaultBackground}" />
|
||||||
<Setter Property="RepeatButton.Foreground" Value="{DynamicResource ButtonDefaultPrimaryForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultPrimaryForeground}" />
|
||||||
<Setter Property="RepeatButton.BorderBrush" Value="{DynamicResource ButtonDefaultBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultBorderBrush}" />
|
||||||
<Setter Property="RepeatButton.CornerRadius" Value="{DynamicResource ButtonCornerRadius}" />
|
<Setter Property="CornerRadius" Value="{DynamicResource ButtonCornerRadius}" />
|
||||||
<Setter Property="RepeatButton.BorderThickness" Value="{DynamicResource ButtonBorderThickness}" />
|
<Setter Property="BorderThickness" Value="{DynamicResource ButtonBorderThickness}" />
|
||||||
<Setter Property="RepeatButton.Padding" Value="{DynamicResource ButtonDefaultPadding}" />
|
<Setter Property="Padding" Value="{DynamicResource ButtonDefaultPadding}" />
|
||||||
<Setter Property="RepeatButton.RenderTransform" Value="none" />
|
<Setter Property="HorizontalAlignment" Value="Center" />
|
||||||
<Setter Property="RepeatButton.FontSize" Value="{DynamicResource ButtonDefaultFontSize}" />
|
<Setter Property="VerticalAlignment" Value="Center" />
|
||||||
<Setter Property="RepeatButton.FontWeight" Value="{DynamicResource ButtonDefaultFontWeight}" />
|
<Setter Property="RenderTransform" Value="none" />
|
||||||
<Setter Property="RepeatButton.HorizontalContentAlignment" Value="Center" />
|
<Setter Property="FontSize" Value="{DynamicResource ButtonDefaultFontSize}" />
|
||||||
<Setter Property="RepeatButton.VerticalContentAlignment" Value="Center" />
|
<Setter Property="FontWeight" Value="{DynamicResource ButtonDefaultFontWeight}" />
|
||||||
<Setter Property="RepeatButton.MinHeight" Value="12" />
|
<Setter Property="BackgroundSizing" Value="OuterBorderEdge" />
|
||||||
<Setter Property="RepeatButton.Cursor" Value="Hand" />
|
<Setter Property="HorizontalContentAlignment" Value="Center" />
|
||||||
<Setter Property="RepeatButton.Template">
|
<Setter Property="VerticalContentAlignment" Value="Center" />
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource ButtonDefaultHeight}" />
|
||||||
|
<Setter Property="Cursor" Value="Hand" />
|
||||||
|
<Setter Property="Template">
|
||||||
<ControlTemplate TargetType="RepeatButton">
|
<ControlTemplate TargetType="RepeatButton">
|
||||||
<ContentPresenter
|
<ContentPresenter
|
||||||
x:Name="PART_ContentPresenter"
|
x:Name="PART_ContentPresenter"
|
||||||
Padding="{TemplateBinding Padding}"
|
Padding="{TemplateBinding Padding}"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
|
VerticalAlignment="Stretch"
|
||||||
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
||||||
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
||||||
Background="{TemplateBinding Background}"
|
BackgroundSizing="{TemplateBinding BackgroundSizing}"
|
||||||
BorderBrush="{TemplateBinding BorderBrush}"
|
|
||||||
BorderThickness="{TemplateBinding BorderThickness}"
|
BorderThickness="{TemplateBinding BorderThickness}"
|
||||||
Content="{TemplateBinding Content}"
|
Content="{TemplateBinding Content}"
|
||||||
ContentTemplate="{TemplateBinding ContentTemplate}"
|
ContentTemplate="{TemplateBinding ContentTemplate}"
|
||||||
@@ -40,6 +44,11 @@
|
|||||||
<Setter Property="RenderTransform" Value="scale(0.98)" />
|
<Setter Property="RenderTransform" Value="scale(0.98)" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="BorderBrush" Value="{TemplateBinding BorderBrush}" />
|
||||||
|
<Setter Property="Background" Value="{TemplateBinding Background}" />
|
||||||
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^.Primary">
|
<Style Selector="^.Primary">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultPrimaryForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultPrimaryForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
@@ -59,26 +68,27 @@
|
|||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDangerForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDangerForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^:pointerover">
|
<Style Selector="^:pointerover /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultPointeroverBorderBrush}" />
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonDefaultPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonDefaultPointeroverBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultPressedBorderBrush}" />
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonDefaultPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonDefaultPressedBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^:disabled">
|
<Style Selector="^:disabled /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultDisabledBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultDisabledBorderBrush}" />
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonDefaultDisabledBackground}" />
|
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^.Large">
|
<Style Selector="^.Large">
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource ButtonLargeHeight}" />
|
||||||
<Setter Property="Padding" Value="{DynamicResource ButtonLargePadding}" />
|
<Setter Property="Padding" Value="{DynamicResource ButtonLargePadding}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Small">
|
<Style Selector="^.Small">
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource ButtonSmallHeight}" />
|
||||||
<Setter Property="Padding" Value="{DynamicResource ButtonSmallPadding}" />
|
<Setter Property="Padding" Value="{DynamicResource ButtonSmallPadding}" />
|
||||||
</Style>
|
</Style>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
@@ -87,92 +97,147 @@
|
|||||||
x:Key="SolidRepeatButton"
|
x:Key="SolidRepeatButton"
|
||||||
BasedOn="{StaticResource {x:Type RepeatButton}}"
|
BasedOn="{StaticResource {x:Type RepeatButton}}"
|
||||||
TargetType="RepeatButton">
|
TargetType="RepeatButton">
|
||||||
<Setter Property="RepeatButton.Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="RepeatButton.Background" Value="{DynamicResource ButtonSolidPrimaryBackground}" />
|
|
||||||
<Setter Property="RepeatButton.BorderBrush" Value="{DynamicResource ButtonSolidPrimaryBorderBrush}" />
|
|
||||||
|
|
||||||
<Style Selector="^.Primary">
|
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryBorderBrush}" />
|
||||||
<Style Selector="^:pointerover">
|
</Style>
|
||||||
|
|
||||||
|
<Style Selector="^:pointerover /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPointeroverBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPointeroverBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pressed /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPressedBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPressedBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
|
||||||
|
<Style Selector="^.Primary">
|
||||||
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPointeroverBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidPrimaryPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Secondary">
|
<Style Selector="^.Secondary">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryBackground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSecondaryBorderBrush}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryBackground}" />
|
||||||
<Style Selector="^:pointerover">
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSecondaryBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSecondaryPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSecondaryPointeroverBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSecondaryPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSecondaryPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Tertiary">
|
<Style Selector="^.Tertiary">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryBackground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidTertiaryBorderBrush}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryBackground}" />
|
||||||
<Style Selector="^:pointerover">
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidTertiaryBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidTertiaryPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidTertiaryPointeroverBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidTertiaryPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidTertiaryPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Success">
|
<Style Selector="^.Success">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessBackground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSuccessBorderBrush}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessBackground}" />
|
||||||
<Style Selector="^:pointerover">
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSuccessBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSuccessPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSuccessPointeroverBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSuccessPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidSuccessPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Warning">
|
<Style Selector="^.Warning">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningBackground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidWarningBorderBrush}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningBackground}" />
|
||||||
<Style Selector="^:pointerover">
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidWarningBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidWarningPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidWarningPointeroverBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidWarningPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidWarningPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Danger">
|
<Style Selector="^.Danger">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerBackground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidDangerBorderBrush}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerBackground}" />
|
||||||
<Style Selector="^:pointerover">
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidDangerBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerPointeroverBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidDangerPointeroverBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidDangerPointeroverBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:pressed">
|
<Style Selector="^:pressed /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerPressedBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerPressedBackground}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidDangerPressedBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonSolidDangerPressedBorderBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^:disabled">
|
<Style Selector="^:disabled /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultDisabledBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultDisabledBorderBrush}" />
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonDefaultDisabledBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidDisabledBackground}" />
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
||||||
|
</Style>
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme
|
||||||
|
x:Key="OutlineRepeatButton"
|
||||||
|
BasedOn="{StaticResource {x:Type RepeatButton}}"
|
||||||
|
TargetType="RepeatButton">
|
||||||
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonOutlineBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pointerover /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonOutlinePointeroverBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pressed /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonOutlinePressedBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^.Success /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineSuccessBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^.Warning /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineWarningBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^.Danger /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineDangerBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:disabled /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineBorderBrush}" />
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonOutlineBackground}" />
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
@@ -181,9 +246,11 @@
|
|||||||
x:Key="BorderlessRepeatButton"
|
x:Key="BorderlessRepeatButton"
|
||||||
BasedOn="{StaticResource {x:Type RepeatButton}}"
|
BasedOn="{StaticResource {x:Type RepeatButton}}"
|
||||||
TargetType="RepeatButton">
|
TargetType="RepeatButton">
|
||||||
<Setter Property="RepeatButton.Background" Value="Transparent" />
|
<Style Selector="^ /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="RepeatButton.BorderBrush" Value="Transparent" />
|
<Setter Property="Background" Value="Transparent" />
|
||||||
<Style Selector="^:disabled">
|
<Setter Property="BorderBrush" Value="Transparent" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:disabled /template/ ContentPresenter#PART_ContentPresenter">
|
||||||
<Setter Property="BorderBrush" Value="Transparent" />
|
<Setter Property="BorderBrush" Value="Transparent" />
|
||||||
<Setter Property="Background" Value="Transparent" />
|
<Setter Property="Background" Value="Transparent" />
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
||||||
|
|||||||
@@ -319,10 +319,10 @@
|
|||||||
DockPanel.Dock="Top">
|
DockPanel.Dock="Top">
|
||||||
<RepeatButton.IsVisible>
|
<RepeatButton.IsVisible>
|
||||||
<MultiBinding Converter="{x:Static converters:MenuScrollingVisibilityConverter.Instance}" ConverterParameter="0">
|
<MultiBinding Converter="{x:Static converters:MenuScrollingVisibilityConverter.Instance}" ConverterParameter="0">
|
||||||
<ReflectionBinding Path="VerticalScrollBarVisibility" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="VerticalScrollBarVisibility" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
<ReflectionBinding Path="Offset.Y" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="Offset.Y" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
<ReflectionBinding Path="Extent.Height" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="Extent.Height" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
<ReflectionBinding Path="Viewport.Height" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="Viewport.Height" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
</MultiBinding>
|
</MultiBinding>
|
||||||
</RepeatButton.IsVisible>
|
</RepeatButton.IsVisible>
|
||||||
<Path Data="M 0 4 L 8 4 L 4 0 Z" />
|
<Path Data="M 0 4 L 8 4 L 4 0 Z" />
|
||||||
@@ -334,10 +334,10 @@
|
|||||||
DockPanel.Dock="Bottom">
|
DockPanel.Dock="Bottom">
|
||||||
<RepeatButton.IsVisible>
|
<RepeatButton.IsVisible>
|
||||||
<MultiBinding Converter="{x:Static converters:MenuScrollingVisibilityConverter.Instance}" ConverterParameter="100">
|
<MultiBinding Converter="{x:Static converters:MenuScrollingVisibilityConverter.Instance}" ConverterParameter="100">
|
||||||
<ReflectionBinding Path="VerticalScrollBarVisibility" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="VerticalScrollBarVisibility" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
<ReflectionBinding Path="Offset.Y" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="Offset.Y" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
<ReflectionBinding Path="Extent.Height" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="Extent.Height" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
<ReflectionBinding Path="Viewport.Height" RelativeSource="{RelativeSource TemplatedParent}" />
|
<Binding Path="Viewport.Height" RelativeSource="{RelativeSource TemplatedParent}" />
|
||||||
</MultiBinding>
|
</MultiBinding>
|
||||||
</RepeatButton.IsVisible>
|
</RepeatButton.IsVisible>
|
||||||
<Path Data="M 0 0 L 4 4 L 8 0 Z" />
|
<Path Data="M 0 0 L 4 4 L 8 0 Z" />
|
||||||
|
|||||||
@@ -17,6 +17,7 @@
|
|||||||
<Setter Property="SelectableTextBlock.FontSize" Value="{DynamicResource TextBlockFontSize}" />
|
<Setter Property="SelectableTextBlock.FontSize" Value="{DynamicResource TextBlockFontSize}" />
|
||||||
<Setter Property="SelectableTextBlock.Cursor" Value="Ibeam" />
|
<Setter Property="SelectableTextBlock.Cursor" Value="Ibeam" />
|
||||||
<Setter Property="SelectableTextBlock.SelectionBrush" Value="{DynamicResource TextBlockSelectionBackground}" />
|
<Setter Property="SelectableTextBlock.SelectionBrush" Value="{DynamicResource TextBlockSelectionBackground}" />
|
||||||
|
<Setter Property="SelectableTextBlock.SelectionForegroundBrush" Value="{DynamicResource TextBlockSelectionForeground}" />
|
||||||
<Style Selector="^.Secondary">
|
<Style Selector="^.Secondary">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource TextBlockSecondaryForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource TextBlockSecondaryForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|||||||
@@ -2,78 +2,134 @@
|
|||||||
xmlns="https://github.com/avaloniaui"
|
xmlns="https://github.com/avaloniaui"
|
||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
x:CompileBindings="True">
|
x:CompileBindings="True">
|
||||||
|
<Design.PreviewWith>
|
||||||
|
<StackPanel Margin="20">
|
||||||
|
<SplitButton>Hello</SplitButton>
|
||||||
|
</StackPanel>
|
||||||
|
</Design.PreviewWith>
|
||||||
|
|
||||||
<ControlTheme x:Key="{x:Type SplitButton}" TargetType="SplitButton">
|
<ControlTheme x:Key="SemiSplitButtonElement" TargetType="Button">
|
||||||
<Setter Property="SplitButton.Background" Value="{DynamicResource ButtonDefaultBackground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultPrimaryForeground}" />
|
||||||
<Setter Property="SplitButton.Foreground" Value="{DynamicResource ButtonDefaultPrimaryForeground}" />
|
<Setter Property="CornerRadius" Value="{DynamicResource ButtonCornerRadius}" />
|
||||||
<Setter Property="SplitButton.BorderBrush" Value="{DynamicResource ButtonDefaultBorderBrush}" />
|
<Setter Property="BorderThickness" Value="{DynamicResource ButtonBorderThickness}" />
|
||||||
<Setter Property="SplitButton.CornerRadius" Value="{DynamicResource ButtonCornerRadius}" />
|
<Setter Property="Padding" Value="{DynamicResource ButtonDefaultPadding}" />
|
||||||
<Setter Property="SplitButton.BorderThickness" Value="{DynamicResource ButtonBorderThickness}" />
|
<Setter Property="HorizontalAlignment" Value="Center" />
|
||||||
<Setter Property="SplitButton.Padding" Value="{DynamicResource ButtonDefaultPadding}" />
|
<Setter Property="VerticalAlignment" Value="Center" />
|
||||||
<Setter Property="SplitButton.RenderTransform" Value="none" />
|
<Setter Property="RenderTransform" Value="none" />
|
||||||
<Setter Property="SplitButton.FontSize" Value="{DynamicResource ButtonDefaultFontSize}" />
|
<Setter Property="FontSize" Value="{DynamicResource ButtonDefaultFontSize}" />
|
||||||
<Setter Property="SplitButton.FontWeight" Value="{DynamicResource ButtonDefaultFontWeight}" />
|
<Setter Property="FontWeight" Value="{DynamicResource ButtonDefaultFontWeight}" />
|
||||||
<Setter Property="SplitButton.HorizontalContentAlignment" Value="Center" />
|
<Setter Property="BackgroundSizing" Value="OuterBorderEdge" />
|
||||||
<Setter Property="SplitButton.VerticalContentAlignment" Value="Center" />
|
<Setter Property="HorizontalContentAlignment" Value="Center" />
|
||||||
<Setter Property="SplitButton.MinHeight" Value="12" />
|
<Setter Property="VerticalContentAlignment" Value="Center" />
|
||||||
|
<Setter Property="Cursor" Value="Hand" />
|
||||||
<Setter Property="Template">
|
<Setter Property="Template">
|
||||||
<ControlTemplate TargetType="SplitButton">
|
<ControlTemplate TargetType="Button">
|
||||||
<Grid ColumnDefinitions="*,Auto,Auto">
|
<ContentPresenter
|
||||||
<Button
|
x:Name="PART_ContentPresenter"
|
||||||
x:Name="PART_PrimaryButton"
|
Padding="{TemplateBinding Padding}"
|
||||||
Grid.Column="0"
|
HorizontalAlignment="Stretch"
|
||||||
Padding="{TemplateBinding Padding}"
|
VerticalAlignment="Stretch"
|
||||||
HorizontalAlignment="Stretch"
|
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
||||||
VerticalAlignment="Stretch"
|
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
||||||
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
Background="{TemplateBinding Background}"
|
||||||
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
BackgroundSizing="{TemplateBinding BackgroundSizing}"
|
||||||
Background="{TemplateBinding Background}"
|
BorderBrush="{TemplateBinding BorderBrush}"
|
||||||
BorderBrush="{TemplateBinding BorderBrush}"
|
BorderThickness="{TemplateBinding BorderThickness}"
|
||||||
BorderThickness="{TemplateBinding BorderThickness}"
|
Content="{TemplateBinding Content}"
|
||||||
Command="{TemplateBinding Command}"
|
ContentTemplate="{TemplateBinding ContentTemplate}"
|
||||||
CommandParameter="{TemplateBinding CommandParameter}"
|
CornerRadius="{TemplateBinding CornerRadius}"
|
||||||
Content="{TemplateBinding Content}"
|
RecognizesAccessKey="True"
|
||||||
ContentTemplate="{TemplateBinding ContentTemplate}"
|
TextElement.FontSize="{TemplateBinding FontSize}"
|
||||||
CornerRadius="3 0 0 3"
|
TextElement.FontWeight="{TemplateBinding FontWeight}"
|
||||||
Focusable="False"
|
UseLayoutRounding="False" />
|
||||||
FontFamily="{TemplateBinding FontFamily}"
|
|
||||||
FontSize="{TemplateBinding FontSize}"
|
|
||||||
FontWeight="{TemplateBinding FontWeight}"
|
|
||||||
Foreground="{TemplateBinding Foreground}"
|
|
||||||
KeyboardNavigation.IsTabStop="False" />
|
|
||||||
|
|
||||||
<Border
|
|
||||||
x:Name="SeparatorBorder"
|
|
||||||
Grid.Column="1"
|
|
||||||
Width="{DynamicResource SplitButtonSeparatorWidth}"
|
|
||||||
Background="Transparent"
|
|
||||||
BorderBrush="{TemplateBinding BorderBrush}"
|
|
||||||
BorderThickness="0.5" />
|
|
||||||
|
|
||||||
<Button
|
|
||||||
x:Name="PART_SecondaryButton"
|
|
||||||
Grid.Column="2"
|
|
||||||
Padding="4,0"
|
|
||||||
HorizontalAlignment="Stretch"
|
|
||||||
VerticalAlignment="Stretch"
|
|
||||||
HorizontalContentAlignment="Center"
|
|
||||||
VerticalContentAlignment="Center"
|
|
||||||
Background="{TemplateBinding Background}"
|
|
||||||
BorderBrush="{TemplateBinding BorderBrush}"
|
|
||||||
BorderThickness="{TemplateBinding BorderThickness}"
|
|
||||||
CornerRadius="0 3 3 0"
|
|
||||||
Focusable="False"
|
|
||||||
Foreground="{TemplateBinding Foreground}"
|
|
||||||
KeyboardNavigation.IsTabStop="False">
|
|
||||||
<PathIcon
|
|
||||||
Width="12"
|
|
||||||
Height="12"
|
|
||||||
Data="{DynamicResource SplitButtonIconGlyph}"
|
|
||||||
Foreground="{Binding $parent[Button].Foreground}" />
|
|
||||||
</Button>
|
|
||||||
</Grid>
|
|
||||||
</ControlTemplate>
|
</ControlTemplate>
|
||||||
</Setter>
|
</Setter>
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="{x:Type SplitButton}" TargetType="SplitButton">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonDefaultBackground}" />
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultPrimaryForeground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultBorderBrush}" />
|
||||||
|
<Setter Property="CornerRadius" Value="{DynamicResource ButtonCornerRadius}" />
|
||||||
|
<Setter Property="BorderThickness" Value="{DynamicResource ButtonBorderThickness}" />
|
||||||
|
<Setter Property="Padding" Value="{DynamicResource ButtonDefaultPadding}" />
|
||||||
|
<Setter Property="RenderTransform" Value="none" />
|
||||||
|
<Setter Property="HorizontalAlignment" Value="Center" />
|
||||||
|
<Setter Property="VerticalAlignment" Value="Center" />
|
||||||
|
<Setter Property="FontSize" Value="{DynamicResource ButtonDefaultFontSize}" />
|
||||||
|
<Setter Property="FontWeight" Value="{DynamicResource ButtonDefaultFontWeight}" />
|
||||||
|
<Setter Property="HorizontalContentAlignment" Value="Center" />
|
||||||
|
<Setter Property="VerticalContentAlignment" Value="Center" />
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource ButtonDefaultHeight}" />
|
||||||
|
<Setter Property="Template">
|
||||||
|
<ControlTemplate TargetType="SplitButton">
|
||||||
|
<Border
|
||||||
|
BackgroundSizing="OuterBorderEdge"
|
||||||
|
ClipToBounds="True"
|
||||||
|
CornerRadius="{TemplateBinding CornerRadius}">
|
||||||
|
<DockPanel>
|
||||||
|
<Button
|
||||||
|
x:Name="PART_SecondaryButton"
|
||||||
|
Padding="4,0"
|
||||||
|
VerticalAlignment="Stretch"
|
||||||
|
HorizontalContentAlignment="Center"
|
||||||
|
VerticalContentAlignment="Center"
|
||||||
|
BorderThickness="{TemplateBinding BorderThickness}"
|
||||||
|
CornerRadius="0"
|
||||||
|
DockPanel.Dock="Right"
|
||||||
|
Focusable="False"
|
||||||
|
KeyboardNavigation.IsTabStop="False"
|
||||||
|
Theme="{DynamicResource SemiSplitButtonElement}">
|
||||||
|
<PathIcon
|
||||||
|
Width="12"
|
||||||
|
Height="12"
|
||||||
|
Data="{DynamicResource SplitButtonIconGlyph}"
|
||||||
|
Foreground="{Binding $parent[Button].Foreground}" />
|
||||||
|
</Button>
|
||||||
|
<Rectangle
|
||||||
|
x:Name="SeparatorBorder"
|
||||||
|
Width="{DynamicResource SplitButtonSeparatorWidth}"
|
||||||
|
VerticalAlignment="Stretch"
|
||||||
|
DockPanel.Dock="Right"
|
||||||
|
Fill="{TemplateBinding BorderBrush}"
|
||||||
|
StrokeThickness="0" />
|
||||||
|
<Button
|
||||||
|
x:Name="PART_PrimaryButton"
|
||||||
|
Padding="{TemplateBinding Padding}"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
|
VerticalAlignment="Stretch"
|
||||||
|
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
||||||
|
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
||||||
|
BorderThickness="{TemplateBinding BorderThickness}"
|
||||||
|
Command="{TemplateBinding Command}"
|
||||||
|
CommandParameter="{TemplateBinding CommandParameter}"
|
||||||
|
Content="{TemplateBinding Content}"
|
||||||
|
ContentTemplate="{TemplateBinding ContentTemplate}"
|
||||||
|
CornerRadius="0"
|
||||||
|
Focusable="False"
|
||||||
|
FontFamily="{TemplateBinding FontFamily}"
|
||||||
|
FontSize="{TemplateBinding FontSize}"
|
||||||
|
FontWeight="{TemplateBinding FontWeight}"
|
||||||
|
KeyboardNavigation.IsTabStop="False"
|
||||||
|
Theme="{DynamicResource SemiSplitButtonElement}" />
|
||||||
|
</DockPanel>
|
||||||
|
</Border>
|
||||||
|
</ControlTemplate>
|
||||||
|
</Setter>
|
||||||
|
|
||||||
|
<Style Selector="^ /template/ Button">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultPrimaryForeground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultBorderBrush}" />
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonDefaultBackground}" />
|
||||||
|
<Style Selector="^:pointerover">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonDefaultPointeroverBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultPointeroverBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pressed">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonDefaultPressedBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDefaultPressedBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
</Style>
|
||||||
|
|
||||||
|
|
||||||
<Style Selector="^.Secondary /template/ Button">
|
<Style Selector="^.Secondary /template/ Button">
|
||||||
@@ -95,47 +151,90 @@
|
|||||||
<Style Selector="^ /template/ Button">
|
<Style Selector="^ /template/ Button">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryBackground}" />
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
|
<Style Selector="^:pointerover">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPointeroverBackground}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pressed">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPressedBackground}" />
|
||||||
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^.Secondary /template/ Button">
|
<Style Selector="^.Secondary /template/ Button">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryBackground}" />
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Style Selector="^:pointerover">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryPointeroverBackground}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pressed">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSecondaryPressedBackground}" />
|
||||||
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Tertiary /template/ Button">
|
<Style Selector="^.Tertiary /template/ Button">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryBackground}" />
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Style Selector="^:pointerover">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryPointeroverBackground}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pressed">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidTertiaryPressedBackground}" />
|
||||||
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Success /template/ Button">
|
<Style Selector="^.Success /template/ Button">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessBackground}" />
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Style Selector="^:pointerover">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessPointeroverBackground}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pressed">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidSuccessPressedBackground}" />
|
||||||
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Warning /template/ Button">
|
<Style Selector="^.Warning /template/ Button">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningBackground}" />
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Style Selector="^:pointerover">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningPointeroverBackground}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pressed">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidWarningPressedBackground}" />
|
||||||
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Danger /template/ Button">
|
<Style Selector="^.Danger /template/ Button">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerBackground}" />
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
<Style Selector="^:pointerover">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerPointeroverBackground}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pressed">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidDangerPressedBackground}" />
|
||||||
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Large /template/ Button">
|
<Style Selector="^.Large /template/ Button#PART_PrimaryButton">
|
||||||
<Setter Property="Padding" Value="{DynamicResource ButtonLargePadding}" />
|
<Setter Property="Padding" Value="{DynamicResource ButtonLargePadding}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Small /template/ Button">
|
<Style Selector="^.Large">
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource ButtonLargeHeight}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^.Small /template/ Button#PART_PrimaryButton">
|
||||||
<Setter Property="Padding" Value="{DynamicResource ButtonSmallPadding}" />
|
<Setter Property="Padding" Value="{DynamicResource ButtonSmallPadding}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
<Style Selector="^.Small">
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource ButtonSmallHeight}" />
|
||||||
|
</Style>
|
||||||
<Style Selector="^:disabled /template/ Button">
|
<Style Selector="^:disabled /template/ Button">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonDefaultDisabledBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonDefaultBackground}" />
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
<!-- only for ToggleSplitButton -->
|
||||||
|
<Style Selector="^:checked:disabled /template/ Button">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidDisabledBackground}" />
|
||||||
|
</Style>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
|
|
||||||
<ControlTheme
|
<ControlTheme
|
||||||
x:Key="SolidSplitButton"
|
x:Key="SolidSplitButton"
|
||||||
BasedOn="{StaticResource {x:Type SplitButton}}"
|
BasedOn="{StaticResource {x:Type SplitButton}}"
|
||||||
TargetType="SplitButton">
|
TargetType="SplitButton">
|
||||||
<Setter Property="SplitButton.Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
|
||||||
<Setter Property="SplitButton.Background" Value="{DynamicResource ButtonSolidPrimaryBackground}" />
|
|
||||||
<Style Selector="^ /template/ Button">
|
<Style Selector="^ /template/ Button">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource ButtonSolidForeground}" />
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryBackground}" />
|
||||||
|
|
||||||
<Style Selector="^:pointerover">
|
<Style Selector="^:pointerover">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPointeroverBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidPrimaryPointeroverBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
@@ -206,7 +305,37 @@
|
|||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^:disabled /template/ Button">
|
<Style Selector="^:disabled /template/ Button">
|
||||||
<Setter Property="Background" Value="{DynamicResource ButtonDefaultDisabledBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ButtonSolidDisabledBackground}" />
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
||||||
|
</Style>
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme
|
||||||
|
x:Key="OutlineSplitButton"
|
||||||
|
BasedOn="{StaticResource {x:Type SplitButton}}"
|
||||||
|
TargetType="SplitButton">
|
||||||
|
<Style Selector="^ /template/ Button">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonOutlineBackground}" />
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineBorderBrush}" />
|
||||||
|
<Style Selector="^:pointerover">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonOutlinePointeroverBackground}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:pressed">
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonOutlinePressedBackground}" />
|
||||||
|
</Style>
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^.Success /template/ Button">
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineSuccessBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^.Warning /template/ Button">
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineWarningBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^.Danger /template/ Button">
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineDangerBorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^:disabled /template/ Button">
|
||||||
|
<Setter Property="BorderBrush" Value="{DynamicResource ButtonOutlineBorderBrush}" />
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ButtonOutlineBackground}" />
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ButtonDefaultDisabledForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
@@ -215,8 +344,10 @@
|
|||||||
x:Key="BorderlessSplitButton"
|
x:Key="BorderlessSplitButton"
|
||||||
BasedOn="{StaticResource {x:Type SplitButton}}"
|
BasedOn="{StaticResource {x:Type SplitButton}}"
|
||||||
TargetType="SplitButton">
|
TargetType="SplitButton">
|
||||||
<Setter Property="SplitButton.Background" Value="Transparent" />
|
<Style Selector="^ /template/ Button">
|
||||||
<Setter Property="SplitButton.BorderBrush" Value="Transparent" />
|
<Setter Property="Background" Value="Transparent" />
|
||||||
|
<Setter Property="BorderBrush" Value="Transparent" />
|
||||||
|
</Style>
|
||||||
<Style Selector="^:disabled /template/ Button">
|
<Style Selector="^:disabled /template/ Button">
|
||||||
<Setter Property="BorderBrush" Value="Transparent" />
|
<Setter Property="BorderBrush" Value="Transparent" />
|
||||||
<Setter Property="Background" Value="Transparent" />
|
<Setter Property="Background" Value="Transparent" />
|
||||||
|
|||||||
@@ -129,7 +129,7 @@
|
|||||||
x:Name="PART_ContentPresenter"
|
x:Name="PART_ContentPresenter"
|
||||||
Content="{TemplateBinding Content}"
|
Content="{TemplateBinding Content}"
|
||||||
ContentTemplate="{TemplateBinding ContentTemplate}" />
|
ContentTemplate="{TemplateBinding ContentTemplate}" />
|
||||||
<Rectangle Name="LightDismissLayer" />
|
<Rectangle Name="LightDismissLayer" IsVisible="False" />
|
||||||
</Panel>
|
</Panel>
|
||||||
|
|
||||||
</Grid>
|
</Grid>
|
||||||
@@ -235,8 +235,8 @@
|
|||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^:lightdismiss /template/ Rectangle#LightDismissLayer">
|
<Style Selector="^:lightDismiss /template/ Rectangle#LightDismissLayer">
|
||||||
<Setter Property="Fill" Value="#99000000" />
|
<Setter Property="Fill" Value="{DynamicResource SplitViewMaskBrush}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:overlay:open /template/ Rectangle#LightDismissLayer">
|
<Style Selector="^:overlay:open /template/ Rectangle#LightDismissLayer">
|
||||||
<Setter Property="IsVisible" Value="True" />
|
<Setter Property="IsVisible" Value="True" />
|
||||||
|
|||||||
@@ -53,11 +53,14 @@
|
|||||||
<Setter Property="TextBox.SelectionBrush" Value="{DynamicResource TextBoxSelectionBackground}" />
|
<Setter Property="TextBox.SelectionBrush" Value="{DynamicResource TextBoxSelectionBackground}" />
|
||||||
<Setter Property="TextBox.SelectionForegroundBrush" Value="{DynamicResource TextBoxSelectionForeground}" />
|
<Setter Property="TextBox.SelectionForegroundBrush" Value="{DynamicResource TextBoxSelectionForeground}" />
|
||||||
<Setter Property="TextBox.BorderThickness" Value="{DynamicResource TextBoxBorderThickness}" />
|
<Setter Property="TextBox.BorderThickness" Value="{DynamicResource TextBoxBorderThickness}" />
|
||||||
|
<Setter Property="TextBox.BackgroundSizing" Value="OuterBorderEdge" />
|
||||||
<Setter Property="TextBox.CornerRadius" Value="{DynamicResource TextBoxDefaultCornerRadius}" />
|
<Setter Property="TextBox.CornerRadius" Value="{DynamicResource TextBoxDefaultCornerRadius}" />
|
||||||
<Setter Property="TextBox.FontSize" Value="14" />
|
<Setter Property="TextBox.FontSize" Value="14" />
|
||||||
<Setter Property="TextBox.Cursor" Value="Ibeam" />
|
<Setter Property="TextBox.Cursor" Value="Ibeam" />
|
||||||
<Setter Property="TextBox.CaretBrush" Value="{DynamicResource TextBoxTextCaretBrush}" />
|
<Setter Property="TextBox.CaretBrush" Value="{DynamicResource TextBoxTextCaretBrush}" />
|
||||||
<Setter Property="TextBox.Padding" Value="{DynamicResource TextBoxContentPadding}" />
|
<Setter Property="TextBox.Padding" Value="{DynamicResource TextBoxContentPadding}" />
|
||||||
|
<Setter Property="TextBox.MinHeight" Value="{DynamicResource TextBoxDefaultHeight}" />
|
||||||
|
<Setter Property="TextBox.VerticalAlignment" Value="Center" />
|
||||||
<Setter Property="TextBox.VerticalContentAlignment" Value="Center" />
|
<Setter Property="TextBox.VerticalContentAlignment" Value="Center" />
|
||||||
<Setter Property="TextBox.FocusAdorner" Value="{x:Null}" />
|
<Setter Property="TextBox.FocusAdorner" Value="{x:Null}" />
|
||||||
<Setter Property="ScrollViewer.IsScrollChainingEnabled" Value="True" />
|
<Setter Property="ScrollViewer.IsScrollChainingEnabled" Value="True" />
|
||||||
@@ -67,8 +70,9 @@
|
|||||||
<DataValidationErrors>
|
<DataValidationErrors>
|
||||||
<Border
|
<Border
|
||||||
Name="PART_ContentPresenterBorder"
|
Name="PART_ContentPresenterBorder"
|
||||||
MinHeight="{DynamicResource TextBoxWrapperDefaultHeight}"
|
MinHeight="{TemplateBinding MinHeight}"
|
||||||
Background="{TemplateBinding Background}"
|
Background="{TemplateBinding Background}"
|
||||||
|
BackgroundSizing="{TemplateBinding BackgroundSizing}"
|
||||||
BorderBrush="{TemplateBinding BorderBrush}"
|
BorderBrush="{TemplateBinding BorderBrush}"
|
||||||
BorderThickness="{TemplateBinding BorderThickness}"
|
BorderThickness="{TemplateBinding BorderThickness}"
|
||||||
CornerRadius="{TemplateBinding CornerRadius}">
|
CornerRadius="{TemplateBinding CornerRadius}">
|
||||||
@@ -105,6 +109,7 @@
|
|||||||
<TextPresenter
|
<TextPresenter
|
||||||
Name="PART_TextPresenter"
|
Name="PART_TextPresenter"
|
||||||
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
|
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
|
||||||
|
CaretBlinkInterval="{TemplateBinding CaretBlinkInterval}"
|
||||||
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
|
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
|
||||||
CaretBrush="{TemplateBinding CaretBrush}"
|
CaretBrush="{TemplateBinding CaretBrush}"
|
||||||
CaretIndex="{TemplateBinding CaretIndex}"
|
CaretIndex="{TemplateBinding CaretIndex}"
|
||||||
@@ -198,11 +203,11 @@
|
|||||||
<Setter Property="IsVisible" Value="True" />
|
<Setter Property="IsVisible" Value="True" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Large /template/ Border#PART_ContentPresenterBorder">
|
<Style Selector="^.Large">
|
||||||
<Setter Property="MinHeight" Value="{DynamicResource TextBoxWrapperLargeHeight}" />
|
<Setter Property="MinHeight" Value="{DynamicResource TextBoxLargeHeight}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Small /template/ Border#PART_ContentPresenterBorder">
|
<Style Selector="^.Small">
|
||||||
<Setter Property="MinHeight" Value="{DynamicResource TextBoxWrapperSmallHeight}" />
|
<Setter Property="MinHeight" Value="{DynamicResource TextBoxSmallHeight}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^.Bordered">
|
<Style Selector="^.Bordered">
|
||||||
@@ -240,6 +245,13 @@
|
|||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
|
<Style Selector="^.TextArea">
|
||||||
|
<Setter Property="AcceptsReturn" Value="True"></Setter>
|
||||||
|
<Setter Property="VerticalContentAlignment" Value="Top"></Setter>
|
||||||
|
<Setter Property="TextBox.Padding" Value="{DynamicResource TextBoxTextAreaContentPadding}"></Setter>
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource TextBoxTextAreaHeight}"></Setter>
|
||||||
|
</Style>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
|
|
||||||
<ControlTheme x:Key="NonErrorTextBox" TargetType="TextBox">
|
<ControlTheme x:Key="NonErrorTextBox" TargetType="TextBox">
|
||||||
@@ -248,13 +260,15 @@
|
|||||||
<Setter Property="TextBox.BorderBrush" Value="{DynamicResource TextBoxDefaultBorderBrush}" />
|
<Setter Property="TextBox.BorderBrush" Value="{DynamicResource TextBoxDefaultBorderBrush}" />
|
||||||
<Setter Property="TextBox.SelectionBrush" Value="{DynamicResource TextBoxSelectionBackground}" />
|
<Setter Property="TextBox.SelectionBrush" Value="{DynamicResource TextBoxSelectionBackground}" />
|
||||||
<Setter Property="TextBox.SelectionForegroundBrush" Value="{DynamicResource TextBoxSelectionForeground}" />
|
<Setter Property="TextBox.SelectionForegroundBrush" Value="{DynamicResource TextBoxSelectionForeground}" />
|
||||||
|
<Setter Property="TextBox.BackgroundSizing" Value="OuterBorderEdge" />
|
||||||
<Setter Property="TextBox.BorderThickness" Value="{DynamicResource TextBoxBorderThickness}" />
|
<Setter Property="TextBox.BorderThickness" Value="{DynamicResource TextBoxBorderThickness}" />
|
||||||
<Setter Property="TextBox.CornerRadius" Value="{DynamicResource TextBoxDefaultCornerRadius}" />
|
<Setter Property="TextBox.CornerRadius" Value="{DynamicResource TextBoxDefaultCornerRadius}" />
|
||||||
<Setter Property="TextBox.FontSize" Value="14" />
|
<Setter Property="TextBox.FontSize" Value="14" />
|
||||||
<Setter Property="TextBox.Cursor" Value="Ibeam" />
|
<Setter Property="TextBox.Cursor" Value="Ibeam" />
|
||||||
<Setter Property="TextBox.CaretBrush" Value="{DynamicResource TextBoxTextCaretBrush}" />
|
<Setter Property="TextBox.CaretBrush" Value="{DynamicResource TextBoxTextCaretBrush}" />
|
||||||
<Setter Property="TextBox.Padding" Value="{DynamicResource TextBoxContentPadding}" />
|
<Setter Property="TextBox.Padding" Value="{DynamicResource TextBoxContentPadding}" />
|
||||||
<Setter Property="TextBox.MinHeight" Value="{DynamicResource TextBoxWrapperDefaultHeight}" />
|
<Setter Property="TextBox.MinHeight" Value="{DynamicResource TextBoxDefaultHeight}" />
|
||||||
|
<Setter Property="TextBox.VerticalAlignment" Value="Center" />
|
||||||
<Setter Property="TextBox.VerticalContentAlignment" Value="Center" />
|
<Setter Property="TextBox.VerticalContentAlignment" Value="Center" />
|
||||||
<Setter Property="TextBox.FocusAdorner" Value="{x:Null}" />
|
<Setter Property="TextBox.FocusAdorner" Value="{x:Null}" />
|
||||||
<Setter Property="ScrollViewer.IsScrollChainingEnabled" Value="True" />
|
<Setter Property="ScrollViewer.IsScrollChainingEnabled" Value="True" />
|
||||||
@@ -266,10 +280,11 @@
|
|||||||
Name="PART_ContentPresenterBorder"
|
Name="PART_ContentPresenterBorder"
|
||||||
MinHeight="{TemplateBinding MinHeight}"
|
MinHeight="{TemplateBinding MinHeight}"
|
||||||
Background="{TemplateBinding Background}"
|
Background="{TemplateBinding Background}"
|
||||||
|
BackgroundSizing="{TemplateBinding BackgroundSizing}"
|
||||||
BorderBrush="{TemplateBinding BorderBrush}"
|
BorderBrush="{TemplateBinding BorderBrush}"
|
||||||
BorderThickness="{TemplateBinding BorderThickness}"
|
BorderThickness="{TemplateBinding BorderThickness}"
|
||||||
CornerRadius="{TemplateBinding CornerRadius}">
|
CornerRadius="{TemplateBinding CornerRadius}">
|
||||||
<Grid Margin="{TemplateBinding Padding}" ColumnDefinitions="Auto, *">
|
<Grid Margin="{TemplateBinding Padding}" ColumnDefinitions="Auto, *, Auto">
|
||||||
<ContentPresenter
|
<ContentPresenter
|
||||||
Grid.Column="0"
|
Grid.Column="0"
|
||||||
Padding="{DynamicResource TextBoxInnerLeftContentPadding}"
|
Padding="{DynamicResource TextBoxInnerLeftContentPadding}"
|
||||||
@@ -298,6 +313,7 @@
|
|||||||
Name="PART_TextPresenter"
|
Name="PART_TextPresenter"
|
||||||
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
|
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
|
||||||
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
|
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
|
||||||
|
CaretBlinkInterval="{TemplateBinding CaretBlinkInterval}"
|
||||||
CaretBrush="{TemplateBinding CaretBrush}"
|
CaretBrush="{TemplateBinding CaretBrush}"
|
||||||
CaretIndex="{TemplateBinding CaretIndex}"
|
CaretIndex="{TemplateBinding CaretIndex}"
|
||||||
LineHeight="{TemplateBinding LineHeight}"
|
LineHeight="{TemplateBinding LineHeight}"
|
||||||
@@ -313,6 +329,13 @@
|
|||||||
TextWrapping="{TemplateBinding TextWrapping}" />
|
TextWrapping="{TemplateBinding TextWrapping}" />
|
||||||
</Panel>
|
</Panel>
|
||||||
</ScrollViewer>
|
</ScrollViewer>
|
||||||
|
<ContentPresenter
|
||||||
|
Grid.Column="2"
|
||||||
|
Padding="{DynamicResource TextBoxInnerRightContentPadding}"
|
||||||
|
VerticalAlignment="Center"
|
||||||
|
Content="{TemplateBinding InnerRightContent}"
|
||||||
|
Foreground="{DynamicResource TextBoxInnerForeground}"
|
||||||
|
IsVisible="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=InnerRightContent, Converter={x:Static ObjectConverters.IsNotNull}}" />
|
||||||
</Grid>
|
</Grid>
|
||||||
</Border>
|
</Border>
|
||||||
</DataValidationErrors>
|
</DataValidationErrors>
|
||||||
@@ -355,4 +378,80 @@
|
|||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="LooklessTextBox" TargetType="TextBox">
|
||||||
|
<Setter Property="TextBox.Foreground" Value="{DynamicResource TextBoxForeground}" />
|
||||||
|
<Setter Property="TextBox.SelectionBrush" Value="{DynamicResource TextBoxSelectionBackground}" />
|
||||||
|
<Setter Property="TextBox.SelectionForegroundBrush" Value="{DynamicResource TextBoxSelectionForeground}" />
|
||||||
|
<Setter Property="TextBox.FontSize" Value="14" />
|
||||||
|
<Setter Property="TextBox.Cursor" Value="Ibeam" />
|
||||||
|
<Setter Property="TextBox.CaretBrush" Value="{DynamicResource TextBoxTextCaretBrush}" />
|
||||||
|
<Setter Property="TextBox.Padding" Value="{DynamicResource TextBoxContentPadding}" />
|
||||||
|
<Setter Property="TextBox.MinHeight" Value="{DynamicResource TextBoxDefaultHeight}" />
|
||||||
|
<Setter Property="TextBox.VerticalAlignment" Value="Center" />
|
||||||
|
<Setter Property="TextBox.VerticalContentAlignment" Value="Center" />
|
||||||
|
<Setter Property="TextBox.FocusAdorner" Value="{x:Null}" />
|
||||||
|
<Setter Property="ScrollViewer.IsScrollChainingEnabled" Value="True" />
|
||||||
|
<Setter Property="TextBox.Template">
|
||||||
|
<ControlTemplate TargetType="TextBox">
|
||||||
|
<Border Name="PART_ContentPresenterBorder" MinHeight="{TemplateBinding MinHeight}">
|
||||||
|
<Grid Margin="{TemplateBinding Padding}" ColumnDefinitions="Auto, *, Auto">
|
||||||
|
<ContentPresenter
|
||||||
|
Grid.Column="0"
|
||||||
|
Padding="{DynamicResource TextBoxInnerLeftContentPadding}"
|
||||||
|
VerticalAlignment="Center"
|
||||||
|
Content="{TemplateBinding InnerLeftContent}"
|
||||||
|
Foreground="{DynamicResource TextBoxInnerForeground}"
|
||||||
|
IsVisible="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=InnerLeftContent, Converter={x:Static ObjectConverters.IsNotNull}}" />
|
||||||
|
<ScrollViewer
|
||||||
|
Grid.Column="1"
|
||||||
|
AllowAutoHide="{TemplateBinding (ScrollViewer.AllowAutoHide)}"
|
||||||
|
HorizontalScrollBarVisibility="{TemplateBinding (ScrollViewer.HorizontalScrollBarVisibility)}"
|
||||||
|
IsScrollChainingEnabled="{TemplateBinding (ScrollViewer.IsScrollChainingEnabled)}"
|
||||||
|
VerticalScrollBarVisibility="{TemplateBinding (ScrollViewer.VerticalScrollBarVisibility)}">
|
||||||
|
<Panel>
|
||||||
|
<TextBlock
|
||||||
|
Name="PART_Watermark"
|
||||||
|
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
|
||||||
|
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
|
||||||
|
IsVisible="{TemplateBinding Text, Converter={x:Static StringConverters.IsNullOrEmpty}}"
|
||||||
|
Opacity="0.5"
|
||||||
|
Text="{TemplateBinding Watermark}"
|
||||||
|
TextAlignment="{TemplateBinding TextAlignment}"
|
||||||
|
TextWrapping="{TemplateBinding TextWrapping}" />
|
||||||
|
<TextPresenter
|
||||||
|
Name="PART_TextPresenter"
|
||||||
|
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
|
||||||
|
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
|
||||||
|
CaretBrush="{TemplateBinding CaretBrush}"
|
||||||
|
CaretIndex="{TemplateBinding CaretIndex}"
|
||||||
|
LineHeight="{TemplateBinding LineHeight}"
|
||||||
|
PasswordChar="{TemplateBinding PasswordChar}"
|
||||||
|
RevealPassword="{TemplateBinding RevealPassword}"
|
||||||
|
SelectionBrush="{TemplateBinding SelectionBrush}"
|
||||||
|
SelectionEnd="{TemplateBinding SelectionEnd}"
|
||||||
|
SelectionForegroundBrush="{TemplateBinding SelectionForegroundBrush}"
|
||||||
|
SelectionStart="{TemplateBinding SelectionStart}"
|
||||||
|
Text="{TemplateBinding Text, Mode=TwoWay}"
|
||||||
|
TextAlignment="{TemplateBinding TextAlignment}"
|
||||||
|
TextWrapping="{TemplateBinding TextWrapping}" />
|
||||||
|
</Panel>
|
||||||
|
</ScrollViewer>
|
||||||
|
<ContentPresenter
|
||||||
|
Grid.Column="2"
|
||||||
|
Padding="{DynamicResource TextBoxInnerRightContentPadding}"
|
||||||
|
VerticalAlignment="Center"
|
||||||
|
Content="{TemplateBinding InnerRightContent}"
|
||||||
|
Foreground="{DynamicResource TextBoxInnerForeground}"
|
||||||
|
IsVisible="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=InnerRightContent, Converter={x:Static ObjectConverters.IsNotNull}}" />
|
||||||
|
</Grid>
|
||||||
|
</Border>
|
||||||
|
</ControlTemplate>
|
||||||
|
</Setter>
|
||||||
|
|
||||||
|
<Style Selector="^:disabled">
|
||||||
|
<Setter Property="Foreground" Value="{DynamicResource TextBoxDisabledForeground}" />
|
||||||
|
</Style>
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|||||||
@@ -136,6 +136,7 @@
|
|||||||
<Setter Property="CornerRadius" Value="3" />
|
<Setter Property="CornerRadius" Value="3" />
|
||||||
<Setter Property="HorizontalAlignment" Value="Left" />
|
<Setter Property="HorizontalAlignment" Value="Left" />
|
||||||
<Setter Property="VerticalAlignment" Value="Center" />
|
<Setter Property="VerticalAlignment" Value="Center" />
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource DateTimePickerButtonDefaultHeight}" />
|
||||||
<Setter Property="Template">
|
<Setter Property="Template">
|
||||||
<ControlTemplate>
|
<ControlTemplate>
|
||||||
<DataValidationErrors>
|
<DataValidationErrors>
|
||||||
@@ -149,7 +150,7 @@
|
|||||||
Grid.ColumnSpan="2"
|
Grid.ColumnSpan="2"
|
||||||
Width="242"
|
Width="242"
|
||||||
MinWidth="242"
|
MinWidth="242"
|
||||||
MinHeight="{DynamicResource DateTimePickerButtonDefaultHeight}"
|
MinHeight="{TemplateBinding MinHeight}"
|
||||||
HorizontalAlignment="Stretch"
|
HorizontalAlignment="Stretch"
|
||||||
VerticalAlignment="Stretch"
|
VerticalAlignment="Stretch"
|
||||||
Background="{TemplateBinding Background}"
|
Background="{TemplateBinding Background}"
|
||||||
@@ -171,19 +172,19 @@
|
|||||||
VerticalAlignment="Stretch">
|
VerticalAlignment="Stretch">
|
||||||
<TextBlock
|
<TextBlock
|
||||||
x:Name="PART_HourTextBlock"
|
x:Name="PART_HourTextBlock"
|
||||||
Padding="12,4"
|
Padding="12,0"
|
||||||
HorizontalAlignment="Center"
|
HorizontalAlignment="Center"
|
||||||
VerticalAlignment="Center"
|
VerticalAlignment="Center"
|
||||||
FontFamily="{TemplateBinding FontFamily}"
|
FontFamily="{TemplateBinding FontFamily}"
|
||||||
FontSize="{TemplateBinding FontSize}"
|
FontSize="{TemplateBinding FontSize}"
|
||||||
FontWeight="{TemplateBinding FontWeight}" />
|
FontWeight="{TemplateBinding FontWeight}"
|
||||||
|
Text="{DynamicResource STRING_TIMEPICKER_HOUR_TEXT}" />
|
||||||
</Border>
|
</Border>
|
||||||
|
|
||||||
<Rectangle
|
<Rectangle
|
||||||
Name="PART_FirstColumnDivider"
|
Name="PART_FirstColumnDivider"
|
||||||
Grid.Column="1"
|
Grid.Column="1"
|
||||||
Width="1"
|
Width="1"
|
||||||
Margin="0,4"
|
|
||||||
HorizontalAlignment="Center"
|
HorizontalAlignment="Center"
|
||||||
Fill="{DynamicResource DateTimePickerSeparatorBackground}" />
|
Fill="{DynamicResource DateTimePickerSeparatorBackground}" />
|
||||||
|
|
||||||
@@ -194,19 +195,19 @@
|
|||||||
VerticalAlignment="Stretch">
|
VerticalAlignment="Stretch">
|
||||||
<TextBlock
|
<TextBlock
|
||||||
x:Name="PART_MinuteTextBlock"
|
x:Name="PART_MinuteTextBlock"
|
||||||
Padding="12,4"
|
Padding="12,0"
|
||||||
HorizontalAlignment="Center"
|
HorizontalAlignment="Center"
|
||||||
VerticalAlignment="Center"
|
VerticalAlignment="Center"
|
||||||
FontFamily="{TemplateBinding FontFamily}"
|
FontFamily="{TemplateBinding FontFamily}"
|
||||||
FontSize="{TemplateBinding FontSize}"
|
FontSize="{TemplateBinding FontSize}"
|
||||||
FontWeight="{TemplateBinding FontWeight}" />
|
FontWeight="{TemplateBinding FontWeight}"
|
||||||
|
Text="{DynamicResource STRING_TIMEPICKER_MINUTE_TEXT}" />
|
||||||
</Border>
|
</Border>
|
||||||
|
|
||||||
<Rectangle
|
<Rectangle
|
||||||
Name="PART_SecondColumnDivider"
|
Name="PART_SecondColumnDivider"
|
||||||
Grid.Column="3"
|
Grid.Column="3"
|
||||||
Width="1"
|
Width="1"
|
||||||
Margin="0,4"
|
|
||||||
HorizontalAlignment="Center"
|
HorizontalAlignment="Center"
|
||||||
Fill="{DynamicResource DateTimePickerSeparatorBackground}" />
|
Fill="{DynamicResource DateTimePickerSeparatorBackground}" />
|
||||||
|
|
||||||
@@ -217,7 +218,7 @@
|
|||||||
VerticalAlignment="Stretch">
|
VerticalAlignment="Stretch">
|
||||||
<TextBlock
|
<TextBlock
|
||||||
x:Name="PART_PeriodTextBlock"
|
x:Name="PART_PeriodTextBlock"
|
||||||
Padding="12,4"
|
Padding="12,0"
|
||||||
HorizontalAlignment="Center"
|
HorizontalAlignment="Center"
|
||||||
VerticalAlignment="Center"
|
VerticalAlignment="Center"
|
||||||
FontFamily="{TemplateBinding FontFamily}"
|
FontFamily="{TemplateBinding FontFamily}"
|
||||||
@@ -278,10 +279,10 @@
|
|||||||
<Setter Property="Foreground" Value="{DynamicResource DateTimePickerEmptyForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource DateTimePickerEmptyForeground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^.Large /template/ Button#PART_FlyoutButton">
|
<Style Selector="^.Large">
|
||||||
<Setter Property="MinHeight" Value="{DynamicResource DateTimePickerButtonLargeHeight}" />
|
<Setter Property="MinHeight" Value="{DynamicResource DateTimePickerButtonLargeHeight}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Small /template/ Button#PART_FlyoutButton">
|
<Style Selector="^.Small">
|
||||||
<Setter Property="MinHeight" Value="{DynamicResource DateTimePickerButtonSmallHeight}" />
|
<Setter Property="MinHeight" Value="{DynamicResource DateTimePickerButtonSmallHeight}" />
|
||||||
</Style>
|
</Style>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
|
|||||||
@@ -20,24 +20,30 @@
|
|||||||
</StackPanel>
|
</StackPanel>
|
||||||
</Design.PreviewWith>
|
</Design.PreviewWith>
|
||||||
<ControlTheme x:Key="{x:Type ToggleButton}" TargetType="ToggleButton">
|
<ControlTheme x:Key="{x:Type ToggleButton}" TargetType="ToggleButton">
|
||||||
<Setter Property="ToggleButton.Background" Value="{DynamicResource ToggleButtonDefaultBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ToggleButtonDefaultBackground}" />
|
||||||
<Setter Property="ToggleButton.Foreground" Value="{DynamicResource ToggleButtonDefaultPrimaryForeground}" />
|
<Setter Property="BackgroundSizing" Value="OuterBorderEdge" />
|
||||||
<Setter Property="ToggleButton.BorderBrush" Value="{DynamicResource ToggleButtonDefaultBorderBrush}" />
|
<Setter Property="Foreground" Value="{DynamicResource ToggleButtonDefaultPrimaryForeground}" />
|
||||||
<Setter Property="ToggleButton.CornerRadius" Value="{DynamicResource ToggleButtonCornerRadius}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ToggleButtonDefaultBorderBrush}" />
|
||||||
<Setter Property="ToggleButton.BorderThickness" Value="{DynamicResource ToggleButtonBorderThickness}" />
|
<Setter Property="CornerRadius" Value="{DynamicResource ToggleButtonCornerRadius}" />
|
||||||
<Setter Property="ToggleButton.Padding" Value="{DynamicResource ToggleButtonDefaultPadding}" />
|
<Setter Property="BorderThickness" Value="{DynamicResource ToggleButtonBorderThickness}" />
|
||||||
<Setter Property="ToggleButton.RenderTransform" Value="none" />
|
<Setter Property="Padding" Value="{DynamicResource ButtonDefaultPadding}" />
|
||||||
<Setter Property="ToggleButton.FontSize" Value="{DynamicResource ToggleButtonDefaultFontSize}" />
|
<Setter Property="RenderTransform" Value="none" />
|
||||||
<Setter Property="ToggleButton.FontWeight" Value="{DynamicResource ToggleButtonDefaultFontWeight}" />
|
<Setter Property="FontSize" Value="{DynamicResource ToggleButtonDefaultFontSize}" />
|
||||||
<Setter Property="ToggleButton.HorizontalContentAlignment" Value="Center" />
|
<Setter Property="FontWeight" Value="{DynamicResource ToggleButtonDefaultFontWeight}" />
|
||||||
<Setter Property="ToggleButton.VerticalContentAlignment" Value="Center" />
|
<Setter Property="HorizontalAlignment" Value="Center"/>
|
||||||
<Setter Property="ToggleButton.MinHeight" Value="12" />
|
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||||
<Setter Property="ToggleButton.Cursor" Value="Hand" />
|
<Setter Property="HorizontalContentAlignment" Value="Center" />
|
||||||
<Setter Property="ToggleButton.Template">
|
<Setter Property="VerticalContentAlignment" Value="Center" />
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource ButtonDefaultHeight}" />
|
||||||
|
<Setter Property="Cursor" Value="Hand" />
|
||||||
|
<Setter Property="Template">
|
||||||
<ControlTemplate TargetType="ToggleButton">
|
<ControlTemplate TargetType="ToggleButton">
|
||||||
<ContentPresenter
|
<ContentPresenter
|
||||||
x:Name="PART_ContentPresenter"
|
x:Name="PART_ContentPresenter"
|
||||||
|
BackgroundSizing="{TemplateBinding BackgroundSizing}"
|
||||||
Padding="{TemplateBinding Padding}"
|
Padding="{TemplateBinding Padding}"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
|
VerticalAlignment="Stretch"
|
||||||
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
||||||
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
||||||
Background="{TemplateBinding Background}"
|
Background="{TemplateBinding Background}"
|
||||||
@@ -67,6 +73,7 @@
|
|||||||
|
|
||||||
<Style Selector="^:disabled">
|
<Style Selector="^:disabled">
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ToggleButtonDefaultDisabledBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ToggleButtonDefaultDisabledBorderBrush}" />
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ToggleButtonDefaultBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^.Primary">
|
<Style Selector="^.Primary">
|
||||||
@@ -153,6 +160,7 @@
|
|||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:disabled">
|
<Style Selector="^:disabled">
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ToggleButtonDefaultDisabledBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ToggleButtonDefaultDisabledBorderBrush}" />
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ToggleButtonCheckedDisabledBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
@@ -242,19 +250,21 @@
|
|||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^:disabled">
|
<Style Selector="^:disabled">
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource ToggleButtonIndeterminateDisabledBorderBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource ToggleButtonIndeterminateDisabledBorderBrush}" />
|
||||||
|
<Setter Property="Background" Value="{DynamicResource ToggleButtonDefaultBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^:disabled">
|
<Style Selector="^:disabled">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ToggleButtonDefaultDisabledForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource ToggleButtonDefaultDisabledForeground}" />
|
||||||
<Setter Property="Background" Value="{DynamicResource ToggleButtonDefaultDisabledBackground}" />
|
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^.Large">
|
<Style Selector="^.Large">
|
||||||
<Setter Property="Padding" Value="{DynamicResource ButtonLargePadding}" />
|
<Setter Property="Padding" Value="{DynamicResource ButtonLargePadding}" />
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource ButtonLargeHeight}" />
|
||||||
</Style>
|
</Style>
|
||||||
<Style Selector="^.Small">
|
<Style Selector="^.Small">
|
||||||
<Setter Property="Padding" Value="{DynamicResource ButtonSmallPadding}" />
|
<Setter Property="Padding" Value="{DynamicResource ButtonSmallPadding}" />
|
||||||
|
<Setter Property="MinHeight" Value="{DynamicResource ButtonSmallHeight}" />
|
||||||
</Style>
|
</Style>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|||||||
@@ -36,8 +36,7 @@
|
|||||||
VerticalAlignment="Top"
|
VerticalAlignment="Top"
|
||||||
Content="{TemplateBinding Content}"
|
Content="{TemplateBinding Content}"
|
||||||
ContentTemplate="{TemplateBinding ContentTemplate}"
|
ContentTemplate="{TemplateBinding ContentTemplate}"
|
||||||
IsVisible="{TemplateBinding Content,
|
IsVisible="{TemplateBinding Content, Converter={x:Static ObjectConverters.IsNotNull}}"
|
||||||
Converter={x:Static ObjectConverters.IsNotNull}}"
|
|
||||||
RecognizesAccessKey="True" />
|
RecognizesAccessKey="True" />
|
||||||
<Grid
|
<Grid
|
||||||
Grid.Row="1"
|
Grid.Row="1"
|
||||||
@@ -48,38 +47,34 @@
|
|||||||
Grid.ColumnSpan="2"
|
Grid.ColumnSpan="2"
|
||||||
TemplatedControl.IsTemplateFocusTarget="True" />
|
TemplatedControl.IsTemplateFocusTarget="True" />
|
||||||
<Border
|
<Border
|
||||||
Name="SwitchBackgroundBorder"
|
x:Name="SwitchBackgroundBorder"
|
||||||
Grid.Column="0"
|
Grid.Column="0"
|
||||||
Width="40"
|
Width="{DynamicResource ToggleSwitchDefaultWidth}"
|
||||||
Height="20"
|
Height="{DynamicResource ToggleSwitchDefaultHeight}"
|
||||||
CornerRadius="100">
|
CornerRadius="100">
|
||||||
<Border.Transitions>
|
<Border.Transitions>
|
||||||
<Transitions>
|
<Transitions>
|
||||||
<BrushTransition Property="Background" Duration="0:0:0.2" />
|
<BrushTransition Property="Background" Duration="0:0:0.2" />
|
||||||
</Transitions>
|
</Transitions>
|
||||||
</Border.Transitions>
|
</Border.Transitions>
|
||||||
|
<Canvas
|
||||||
|
x:Name="PART_SwitchKnob"
|
||||||
|
Width="{DynamicResource ToggleSwitchIndicatorDefaultWidth}"
|
||||||
|
Height="{DynamicResource ToggleSwitchIndicatorDefaultWidth}"
|
||||||
|
HorizontalAlignment="Left">
|
||||||
|
<Grid
|
||||||
|
x:Name="PART_MovingKnobs"
|
||||||
|
Width="{DynamicResource ToggleSwitchIndicatorDefaultWidth}"
|
||||||
|
Height="{DynamicResource ToggleSwitchIndicatorDefaultWidth}"
|
||||||
|
Margin="{DynamicResource ToggleSwitchIndicatorDefaultMargin}">
|
||||||
|
<Border
|
||||||
|
x:Name="SwitchKnobIndicator"
|
||||||
|
Background="White"
|
||||||
|
BoxShadow="0 0 1 1 #222E3238"
|
||||||
|
CornerRadius="100" />
|
||||||
|
</Grid>
|
||||||
|
</Canvas>
|
||||||
</Border>
|
</Border>
|
||||||
<Canvas
|
|
||||||
x:Name="PART_SwitchKnob"
|
|
||||||
Grid.Column="0"
|
|
||||||
Width="20"
|
|
||||||
Height="20"
|
|
||||||
HorizontalAlignment="Left">
|
|
||||||
<Grid
|
|
||||||
x:Name="PART_MovingKnobs"
|
|
||||||
Width="20"
|
|
||||||
Height="20">
|
|
||||||
<Border
|
|
||||||
x:Name="SwitchKnobIndicator"
|
|
||||||
Width="14"
|
|
||||||
Height="14"
|
|
||||||
Background="White"
|
|
||||||
BorderBrush="{DynamicResource ToggleSwitchIndicatorBorderBrush}"
|
|
||||||
BorderThickness="0.5"
|
|
||||||
BoxShadow="0 0 1 1 #222E3238"
|
|
||||||
CornerRadius="100" />
|
|
||||||
</Grid>
|
|
||||||
</Canvas>
|
|
||||||
|
|
||||||
<ContentPresenter
|
<ContentPresenter
|
||||||
x:Name="PART_OnContentPresenter"
|
x:Name="PART_OnContentPresenter"
|
||||||
@@ -154,6 +149,36 @@
|
|||||||
<Setter Property="Background" Value="{DynamicResource ToggleSwitchContainerCheckedDisabledBackground}" />
|
<Setter Property="Background" Value="{DynamicResource ToggleSwitchContainerCheckedDisabledBackground}" />
|
||||||
</Style>
|
</Style>
|
||||||
</Style>
|
</Style>
|
||||||
|
<Style Selector="^.Small">
|
||||||
|
<Style Selector="^ /template/ Border#SwitchBackgroundBorder">
|
||||||
|
<Setter Property="Width" Value="{DynamicResource ToggleSwitchSmallWidth}" />
|
||||||
|
<Setter Property="Height" Value="{DynamicResource ToggleSwitchSmallHeight}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^ /template/ Canvas#PART_SwitchKnob">
|
||||||
|
<Setter Property="Width" Value="{DynamicResource ToggleSwitchIndicatorSmallWidth}" />
|
||||||
|
<Setter Property="Height" Value="{DynamicResource ToggleSwitchIndicatorSmallWidth}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^ /template/ Grid#PART_MovingKnobs">
|
||||||
|
<Setter Property="Width" Value="{DynamicResource ToggleSwitchIndicatorSmallWidth}" />
|
||||||
|
<Setter Property="Height" Value="{DynamicResource ToggleSwitchIndicatorSmallWidth}" />
|
||||||
|
<Setter Property="Margin" Value="{DynamicResource ToggleSwitchIndicatorSmallMargin}"/>
|
||||||
|
</Style>
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^.Large">
|
||||||
|
<Style Selector="^ /template/ Border#SwitchBackgroundBorder">
|
||||||
|
<Setter Property="Width" Value="{DynamicResource ToggleSwitchLargeWidth}" />
|
||||||
|
<Setter Property="Height" Value="{DynamicResource ToggleSwitchLargeHeight}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^ /template/ Canvas#PART_SwitchKnob">
|
||||||
|
<Setter Property="Width" Value="{DynamicResource ToggleSwitchIndicatorLargeWidth}" />
|
||||||
|
<Setter Property="Height" Value="{DynamicResource ToggleSwitchIndicatorLargeWidth}" />
|
||||||
|
</Style>
|
||||||
|
<Style Selector="^ /template/ Grid#PART_MovingKnobs">
|
||||||
|
<Setter Property="Width" Value="{DynamicResource ToggleSwitchIndicatorLargeWidth}" />
|
||||||
|
<Setter Property="Height" Value="{DynamicResource ToggleSwitchIndicatorLargeWidth}" />
|
||||||
|
<Setter Property="Margin" Value="{DynamicResource ToggleSwitchIndicatorLargeMargin}"/>
|
||||||
|
</Style>
|
||||||
|
</Style>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
|
|
||||||
<ControlTheme
|
<ControlTheme
|
||||||
@@ -205,49 +230,40 @@
|
|||||||
<Grid
|
<Grid
|
||||||
Background="{TemplateBinding Background}"
|
Background="{TemplateBinding Background}"
|
||||||
Cursor="Hand"
|
Cursor="Hand"
|
||||||
RowDefinitions="*">
|
ColumnDefinitions="Auto, *">
|
||||||
<Grid
|
<Grid
|
||||||
Grid.Row="0"
|
Grid.Column="0"
|
||||||
Background="Transparent"
|
Grid.ColumnSpan="2"
|
||||||
ColumnDefinitions="Auto, *">
|
TemplatedControl.IsTemplateFocusTarget="True" />
|
||||||
<Grid
|
<Border
|
||||||
Grid.Column="0"
|
x:Name="SwitchBackgroundBorder"
|
||||||
Grid.ColumnSpan="2"
|
Grid.Column="0"
|
||||||
TemplatedControl.IsTemplateFocusTarget="True" />
|
Width="{DynamicResource ToggleSwitchDefaultWidth}"
|
||||||
<Border
|
Height="{DynamicResource ToggleSwitchDefaultHeight}"
|
||||||
Name="SwitchBackgroundBorder"
|
CornerRadius="100">
|
||||||
Grid.Column="0"
|
<Border.Transitions>
|
||||||
Width="40"
|
<Transitions>
|
||||||
Height="20"
|
<BrushTransition Property="Background" Duration="0:0:0.2" />
|
||||||
CornerRadius="100">
|
</Transitions>
|
||||||
<Border.Transitions>
|
</Border.Transitions>
|
||||||
<Transitions>
|
|
||||||
<BrushTransition Property="Background" Duration="0:0:0.2" />
|
|
||||||
</Transitions>
|
|
||||||
</Border.Transitions>
|
|
||||||
</Border>
|
|
||||||
<Canvas
|
<Canvas
|
||||||
x:Name="PART_SwitchKnob"
|
x:Name="PART_SwitchKnob"
|
||||||
Grid.Column="0"
|
Width="{DynamicResource ToggleSwitchIndicatorDefaultWidth}"
|
||||||
Width="20"
|
Height="{DynamicResource ToggleSwitchIndicatorDefaultWidth}"
|
||||||
Height="20"
|
|
||||||
HorizontalAlignment="Left">
|
HorizontalAlignment="Left">
|
||||||
<Grid
|
<Grid
|
||||||
x:Name="PART_MovingKnobs"
|
x:Name="PART_MovingKnobs"
|
||||||
Width="20"
|
Width="{DynamicResource ToggleSwitchIndicatorDefaultWidth}"
|
||||||
Height="20">
|
Height="{DynamicResource ToggleSwitchIndicatorDefaultWidth}"
|
||||||
|
Margin="{DynamicResource ToggleSwitchIndicatorDefaultMargin}">
|
||||||
<Border
|
<Border
|
||||||
x:Name="SwitchKnobIndicator"
|
x:Name="SwitchKnobIndicator"
|
||||||
Width="14"
|
|
||||||
Height="14"
|
|
||||||
Background="White"
|
Background="White"
|
||||||
BorderBrush="{DynamicResource ToggleSwitchIndicatorBorderBrush}"
|
|
||||||
BorderThickness="0.5"
|
|
||||||
BoxShadow="0 0 1 1 #222E3238"
|
BoxShadow="0 0 1 1 #222E3238"
|
||||||
CornerRadius="100" />
|
CornerRadius="100" />
|
||||||
</Grid>
|
</Grid>
|
||||||
</Canvas>
|
</Canvas>
|
||||||
</Grid>
|
</Border>
|
||||||
</Grid>
|
</Grid>
|
||||||
</ControlTemplate>
|
</ControlTemplate>
|
||||||
</Setter>
|
</Setter>
|
||||||
|
|||||||
@@ -1,23 +0,0 @@
|
|||||||
<ResourceDictionary
|
|
||||||
xmlns="https://github.com/avaloniaui"
|
|
||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
||||||
x:CompileBindings="True">
|
|
||||||
<!-- Add Resources Here -->
|
|
||||||
<ControlTheme x:Key="{x:Type UserControl}" TargetType="UserControl">
|
|
||||||
<Setter Property="Template">
|
|
||||||
<ControlTemplate TargetType="UserControl">
|
|
||||||
<ContentPresenter
|
|
||||||
Name="PART_ContentPresenter"
|
|
||||||
Padding="{TemplateBinding Padding}"
|
|
||||||
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
|
||||||
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
|
||||||
Background="{TemplateBinding Background}"
|
|
||||||
BorderBrush="{TemplateBinding BorderBrush}"
|
|
||||||
BorderThickness="{TemplateBinding BorderThickness}"
|
|
||||||
Content="{TemplateBinding Content}"
|
|
||||||
ContentTemplate="{TemplateBinding ContentTemplate}"
|
|
||||||
CornerRadius="{TemplateBinding CornerRadius}" />
|
|
||||||
</ControlTemplate>
|
|
||||||
</Setter>
|
|
||||||
</ControlTheme>
|
|
||||||
</ResourceDictionary>
|
|
||||||