From 0fbcf43309402af52466e82decaf1f90b24a830e Mon Sep 17 00:00:00 2001
From: Zhang Dian <54255897+zdpcdt@users.noreply.github.com>
Date: Wed, 25 Mar 2026 19:51:23 +0800
Subject: [PATCH] feat: update TabItem with icon. (#778)
---
.../Pages/TabControlDemo.axaml | 48 +++-----
src/Semi.Avalonia/Controls/TabItem.axaml | 115 +++++++++++-------
src/Semi.Avalonia/Themes/Dark/TabItem.axaml | 3 +
.../Themes/HighContrast/TabItem.axaml | 3 +
src/Semi.Avalonia/Themes/Light/TabItem.axaml | 3 +
src/Semi.Avalonia/Themes/Shared/TabItem.axaml | 1 +
6 files changed, 100 insertions(+), 73 deletions(-)
diff --git a/demo/Semi.Avalonia.Demo/Pages/TabControlDemo.axaml b/demo/Semi.Avalonia.Demo/Pages/TabControlDemo.axaml
index dc2398c..bb41fb4 100644
--- a/demo/Semi.Avalonia.Demo/Pages/TabControlDemo.axaml
+++ b/demo/Semi.Avalonia.Demo/Pages/TabControlDemo.axaml
@@ -34,14 +34,10 @@
-
-
-
-
-
+
+
+
+
@@ -57,14 +53,10 @@
-
-
-
-
-
+
+
+
+
@@ -82,14 +74,10 @@
Background="Transparent"
Theme="{StaticResource CardBorder}">
-
-
-
-
-
+
+
+
+
-
-
-
-
-
+
+
+
+
diff --git a/src/Semi.Avalonia/Controls/TabItem.axaml b/src/Semi.Avalonia/Controls/TabItem.axaml
index e0fce6b..1f721c0 100644
--- a/src/Semi.Avalonia/Controls/TabItem.axaml
+++ b/src/Semi.Avalonia/Controls/TabItem.axaml
@@ -6,16 +6,12 @@
Width="400"
Height="400"
Margin="20">
+
-
-
-
-
-
-
-
-
-
+
+
+
+
@@ -25,20 +21,39 @@
-
+ CornerRadius="{TemplateBinding CornerRadius}">
+
+
+
+
+
+
+
+
+
+
+
@@ -46,17 +61,31 @@
-
+
+
+
+
+
-
-
@@ -98,27 +127,27 @@
x:Key="LineTabItem"
BasedOn="{StaticResource BaseTabItem}"
TargetType="TabItem">
-
-
-
@@ -150,15 +179,15 @@
TargetType="TabItem">
-
-
@@ -207,16 +236,20 @@
TargetType="TabItem">
-
+
-
diff --git a/src/Semi.Avalonia/Themes/Dark/TabItem.axaml b/src/Semi.Avalonia/Themes/Dark/TabItem.axaml
index af5e3d0..509c1c8 100644
--- a/src/Semi.Avalonia/Themes/Dark/TabItem.axaml
+++ b/src/Semi.Avalonia/Themes/Dark/TabItem.axaml
@@ -19,4 +19,7 @@
+
+
+
\ No newline at end of file
diff --git a/src/Semi.Avalonia/Themes/HighContrast/TabItem.axaml b/src/Semi.Avalonia/Themes/HighContrast/TabItem.axaml
index ced4623..890426c 100644
--- a/src/Semi.Avalonia/Themes/HighContrast/TabItem.axaml
+++ b/src/Semi.Avalonia/Themes/HighContrast/TabItem.axaml
@@ -19,4 +19,7 @@
+
+
+
\ No newline at end of file
diff --git a/src/Semi.Avalonia/Themes/Light/TabItem.axaml b/src/Semi.Avalonia/Themes/Light/TabItem.axaml
index af5e3d0..509c1c8 100644
--- a/src/Semi.Avalonia/Themes/Light/TabItem.axaml
+++ b/src/Semi.Avalonia/Themes/Light/TabItem.axaml
@@ -19,4 +19,7 @@
+
+
+
\ No newline at end of file
diff --git a/src/Semi.Avalonia/Themes/Shared/TabItem.axaml b/src/Semi.Avalonia/Themes/Shared/TabItem.axaml
index 9e017ba..601039a 100644
--- a/src/Semi.Avalonia/Themes/Shared/TabItem.axaml
+++ b/src/Semi.Avalonia/Themes/Shared/TabItem.axaml
@@ -1,4 +1,5 @@
+
\ No newline at end of file