CPF/CPF.ReoGrid/NamedRange.cs

81 lines
1.7 KiB
C#
Raw Permalink Normal View History

2024-06-24 10:15:59 +08:00
using System;
using System.Diagnostics;
namespace CPF.ReoGrid
{
public class NamedRange : ReferenceRange
{
public string Name
{
get
{
return this.internalName;
}
set
{
bool flag = this.internalName != value;
if (flag)
{
NamedRange namedRange = null;
bool flag2 = base.Worksheet != null;
if (flag2)
{
namedRange = base.Worksheet.GetNamedRange(this.internalName);
}
bool flag3 = namedRange != null;
if (flag3)
{
base.Worksheet.RenameNamedRange(this.internalName, value);
}
else
{
this.internalName = value;
}
bool flag4 = this.NameChanged != null;
if (flag4)
{
this.NameChanged(this, null);
}
}
}
}
public string Comment { get; set; }
public NamedRange(Worksheet worksheet, string name, string address) : this(worksheet, name, new RangePosition(address))
{
}
public NamedRange(Worksheet worksheet, string name, RangePosition range) : this(worksheet, name, range.StartPos, range.EndPos)
{
}
public NamedRange(Worksheet worksheet, string name, CellPosition startPos, CellPosition endPos) : base(worksheet, startPos, endPos)
{
bool flag = RangePosition.IsValidAddress(name);
if (flag)
{
throw new InvalidNamedRangeException(name);
}
this.internalName = name;
}
//[DebuggerBrowsable(DebuggerBrowsableState.Never)]
public event EventHandler NameChanged;
public static bool IsValidName(string name)
{
return RGUtility.IsValidName(name);
}
public NamedRangeScope Scope { get; set; }
public override string ToString()
{
return string.Format("{0}!{1}", base.Worksheet.Name, this.ToAddress());
}
internal string internalName;
}
}