20211111-1
This commit is contained in:
parent
3a9dc475e9
commit
2d69035bd7
60
anbs_cp/CountFormatter.cs
Normal file
60
anbs_cp/CountFormatter.cs
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
namespace anbs_cp
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Форматирует число элементов в понятную строку
|
||||||
|
/// </summary>
|
||||||
|
public class CountFormatter : IValueFormatter
|
||||||
|
{
|
||||||
|
#region Cвойства класса
|
||||||
|
/// <summary>
|
||||||
|
/// Имена чисел ( , тысяч, миллионов, миллиардов и триллионов)
|
||||||
|
/// </summary>
|
||||||
|
public string[] SizeNames { get; set; } = { "Байт", "Кб", "Мб", "Гб", "Тб" };
|
||||||
|
/// <summary>
|
||||||
|
/// Знаков после запятой
|
||||||
|
/// </summary>
|
||||||
|
public byte DecimalPlaces { get; set; } = 2;
|
||||||
|
/// <summary>
|
||||||
|
/// Максимально байт (далее идут Кбайты)
|
||||||
|
/// </summary>
|
||||||
|
public long ByteMax { get; set; } = 1024;
|
||||||
|
/// <summary>
|
||||||
|
/// Максимально Кбайт (далее идут Мбайты)
|
||||||
|
/// </summary>
|
||||||
|
public long KByteMax { get; set; } = 1048576;
|
||||||
|
/// <summary>
|
||||||
|
/// Максимально Мбайт (далее идут Гбайты)
|
||||||
|
/// </summary>
|
||||||
|
public long MByteMax { get; set; } = 1073741824;
|
||||||
|
/// <summary>
|
||||||
|
/// Максимально Гбайт (далее идут Тбайты)
|
||||||
|
/// </summary>
|
||||||
|
public long GByteMax { get; set; } = 1099511627776;
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region Реализация интерфейса
|
||||||
|
/// <summary>
|
||||||
|
/// Реализация интерфейса
|
||||||
|
/// </summary>
|
||||||
|
public string[] ValueNames { get => SizeNames; set => SizeNames = value; }
|
||||||
|
/// <summary>
|
||||||
|
/// Реализация интерфейса
|
||||||
|
/// </summary>
|
||||||
|
public long[] MaxSizes
|
||||||
|
{
|
||||||
|
get => new long[] { ByteMax, KByteMax, MByteMax, GByteMax };
|
||||||
|
set
|
||||||
|
{
|
||||||
|
ByteMax = value[0];
|
||||||
|
KByteMax = value[1];
|
||||||
|
MByteMax = value[2];
|
||||||
|
GByteMax = value[3];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// <summary>
|
||||||
|
/// Реализация интерфейса
|
||||||
|
/// </summary>
|
||||||
|
public string Format(long value) => (this as IValueFormatter).Format(value);
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
|
}
|
@ -51,6 +51,10 @@
|
|||||||
GByteMax = value[3];
|
GByteMax = value[3];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/// <summary>
|
||||||
|
/// Реализация интерфейса
|
||||||
|
/// </summary>
|
||||||
|
public string Format(long value) => (this as IValueFormatter).Format(value);
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,7 +1,7 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>net6.0-windows</TargetFramework>
|
<TargetFramework>net6.0</TargetFramework>
|
||||||
<Version>1.20211111.0</Version>
|
<Version>1.20211111.0</Version>
|
||||||
<Authors>Alexander Babaev</Authors>
|
<Authors>Alexander Babaev</Authors>
|
||||||
<Product>ANB Software Components Pack</Product>
|
<Product>ANB Software Components Pack</Product>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user