81 lines
1.7 KiB
C#
81 lines
1.7 KiB
C#
![]() |
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;
|
|||
|
}
|
|||
|
}
|