From e64d24005284e88daec445c7e79e6b93929d2463 Mon Sep 17 00:00:00 2001
From: chr <chrry550@163.com>
Date: 星期三, 28 二月 2024 15:35:32 +0800
Subject: [PATCH] 优化程序UI;
---
Controls/IconTabItem.cs | 117 +++++++++++++++++++++++++++++++++++-----------------------
1 files changed, 71 insertions(+), 46 deletions(-)
diff --git a/Controls/IconTabItem.cs b/Controls/IconTabItem.cs
index 4bddc27..fef59e2 100644
--- a/Controls/IconTabItem.cs
+++ b/Controls/IconTabItem.cs
@@ -1,46 +1,71 @@
-锘縰sing System.Windows;
-using System.Windows.Controls;
-
-namespace WPFProject.Controls
-{
- public class IconTabItem : TabItem
- {
- public IconTabItem() : base()
- {
- Visibility = Visibility.Collapsed;
- }
-
- private string _icon;
- public string Icon
- {
- get => _icon;
- set => _icon = value;
- }
-
- private bool _isFont;
- public bool IsFont
- {
- get => _isFont;
- set => _isFont = value;
- }
-
- private Window _Body;
- public Window Body
- {
- get => _Body;
- set => _Body = value;
- }
-
- // 鍗旽eader鐨勫瓧浣撳ぇ灏�
- public double HeaderFontSize
- {
- get { return (double)GetValue(HeaderFontSizeProperty); }
- set { SetValue(HeaderFontSizeProperty, value); }
- }
-
- // Using a DependencyProperty as the backing store for MyProperty. This enables animation, styling, binding, etc...
- public static readonly DependencyProperty HeaderFontSizeProperty =
- DependencyProperty.Register("HeaderFontSize", typeof(double), typeof(IconTabItem), new PropertyMetadata(20.0));
-
- }
-}
+锘縰sing System.ComponentModel;
+using System.Runtime.CompilerServices;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Media;
+using System.Windows.Media.Imaging;
+
+namespace WPFProject.Controls
+{
+ public class IconTabItem : TabItem , INotifyPropertyChanged
+ {
+ public event PropertyChangedEventHandler PropertyChanged;
+
+ protected virtual void RaisePropertyChanged(string name)
+ {
+ PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(name));
+ }
+
+ protected void RaiseAndSetIfChanged<T>(ref T old, T @new, [CallerMemberName] string propertyName = null)
+ {
+ old = @new;
+ if (propertyName != null)
+ {
+ RaisePropertyChanged(propertyName);
+ }
+ }
+
+ public IconTabItem() : base()
+ {
+ Visibility = Visibility.Collapsed;
+ }
+
+ private bool _isFont;
+ public bool IsFont
+ {
+ get => _isFont;
+ set => _isFont = value;
+ }
+
+ private Window _Body;
+ public Window Body
+ {
+ get => _Body;
+ set => _Body = value;
+ }
+
+ private BitmapImage _icon;
+ public BitmapImage Icon
+ {
+ get { return (BitmapImage)GetValue(IconProperty); }
+ set { SetValue(IconProperty, value); }
+ }
+
+ public static readonly DependencyProperty IconProperty =
+ DependencyProperty.Register("Icon", typeof(BitmapImage), typeof(IconTabItem), new PropertyMetadata(
+ new BitmapImage(new System.Uri("pack://application:,,,/Resources/Icon/xinzeng_1.png"))));
+
+
+ // 鍗旽eader鐨勫瓧浣撳ぇ灏�
+ public double HeaderFontSize
+ {
+ get { return (double)GetValue(HeaderFontSizeProperty); }
+ set { SetValue(HeaderFontSizeProperty, value); }
+ }
+
+ // Using a DependencyProperty as the backing store for MyProperty. This enables animation, styling, binding, etc...
+ public static readonly DependencyProperty HeaderFontSizeProperty =
+ DependencyProperty.Register("HeaderFontSize", typeof(double), typeof(IconTabItem), new PropertyMetadata(10.0));
+
+ }
+}
--
Gitblit v1.9.1