Painter/Model/ScaleData.cs
(开头部分) 2KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
namespace Painter.Model
{
public class ScaleData: INotifyPropertyChanged
{
double mScale = 1, mBaseWidth, mBaseHeight;
public event PropertyChangedEventHandler PropertyChanged;
static Dictionary<ScaleData, List<UIElement>> mDataMap=new Dictionary<ScaleData, List<UIElement>>();
public static ScaleData Find_CreateScaleData(UIElement ui)
{
KeyValuePair<ScaleData, List<UIElement>> keyValue =
mDataMap.Where(o => o.Value.Contains(ui) ||
o.Value.Contains((ui as FrameworkElement)?.Parent) ||
o.Value.Contains((ui as Decorator)?.Child)||
o.Value.Contains((ui as ContentControl)?.Content)).FirstOrDefault();
if (keyValue.Value == null)
{
keyValue = new KeyValuePair<ScaleData, List<UIElement>>(new ScaleData(), new List<UIElement>());
mDataMap.Add(keyValue.Key, keyValue.Value);
}
if (!keyValue.Value.Contains(ui))
{
keyValue.Value.Add(ui);
}
return keyValue.Key;
}
public double Scale
{
get { return mScale; }
set { mScale = value; }
}
public double BaseWidth
{
get { return mBaseWidth; }
set { mBaseWidth = value; }
}
public double BaseHeight
{
get { return mBaseHeight; }
set { mBaseHeight = value; }
}
public void UpdateWidthHeight()
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs("Sz_Width_Height"));
}
public string Sz_Width_Height
{
get { return (int)BaseWidth + "x" + (int)BaseHeight + "像素"; }
}
public double ZoomInOut(bool In)
后面还有 8 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。