75 lines
2.2 KiB
C#
75 lines
2.2 KiB
C#
using GeekDesk.Constant;
|
|
using GeekDesk.ViewModel;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows;
|
|
using System.Windows.Controls;
|
|
using System.Windows.Data;
|
|
using System.Windows.Media;
|
|
using System.Windows.Media.Effects;
|
|
|
|
namespace GeekDesk.Util
|
|
{
|
|
public class BGSettingUtil
|
|
{
|
|
private static readonly AppConfig appConfig = MainWindow.appData.AppConfig;
|
|
public static void BGSetting()
|
|
{
|
|
if (appConfig.BGStyle == BGStyle.ImgBac || appConfig.BGStyle == 0)
|
|
{
|
|
Image image = new Image
|
|
{
|
|
Effect = new BlurEffect()
|
|
{
|
|
Radius = appConfig.BlurValue
|
|
},
|
|
Margin = new Thickness(-30),
|
|
Source = appConfig.BitmapImage,
|
|
Opacity = (double)(Math.Round((decimal)(appConfig.BgOpacity / 100.00), 2))
|
|
};
|
|
|
|
|
|
//binding.UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged;
|
|
//image.SetBinding(Image.OpacityProperty, binding);
|
|
|
|
Grid grid = new Grid
|
|
{
|
|
ClipToBounds = true
|
|
};
|
|
grid.Children.Add(image);
|
|
|
|
VisualBrush vb = new VisualBrush
|
|
{
|
|
Visual = grid
|
|
};
|
|
MainWindow.mainWindow.BGBorder.Background = vb;
|
|
}
|
|
else
|
|
{
|
|
LinearGradientBrush lgb = new LinearGradientBrush();
|
|
|
|
GradientStop gs = new GradientStop
|
|
{
|
|
Color = (Color)ColorConverter.ConvertFromString(appConfig.GradientBGParam.Color1),
|
|
Offset = 0
|
|
};
|
|
|
|
lgb.GradientStops.Add(gs);
|
|
|
|
GradientStop gs2 = new GradientStop
|
|
{
|
|
Color = (Color)ColorConverter.ConvertFromString(appConfig.GradientBGParam.Color2),
|
|
Offset = 1
|
|
};
|
|
lgb.GradientStops.Add(gs2);
|
|
MainWindow.mainWindow.BGBorder.Background = lgb;
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
}
|