using Core.Common.Utils.Aop.Markers;
using Core.GIS.SharpMap.Api.Delegates;
namespace Core.GIS.SharpMap.Api.Layers
{
public interface ILabelLayer : ILayer
{
///
/// Data column or expression where label text is extracted from.
///
///
/// This property is overriden by the .
///
string LabelColumn { get; set; }
///
/// Gets or sets the method for creating a custom label string based on a feature.
///
///
/// If this method is not null, it will override the value.
/// The label delegate must take a and return a string.
///
/// Creating a label-text by combining attributes "ROADNAME" and "STATE" into one string, using
/// an anonymous delegate:
///
/// myLabelLayer.LabelStringDelegate = delegate(SharpMap.Data.FeatureDataRow fdr)
/// { return fdr["ROADNAME"].ToString() + ", " + fdr["STATE"].ToString(); };
///
///
///
GetLabelMethod LabelStringDelegate { get; set; }
[NoNotifyPropertyChange]
ILayer Parent { get; set; }
}
}