本文整理汇总了C#中Oranikle.Report.Engine.List类的典型用法代码示例。如果您正苦于以下问题:C# List类的具体用法?C# List怎么用?C# List使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
List类属于Oranikle.Report.Engine命名空间,在下文中一共展示了List类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TableCells
List<TableCell> _Items; // list of TableCell
public TableCells(ReportDefn r, ReportLink p, XmlNode xNode) : base(r, p)
{
TableCell tc;
_Items = new List<TableCell>();
// Loop thru all the child nodes
int colIndex=0; // keep track of the column numbers
foreach(XmlNode xNodeLoop in xNode.ChildNodes)
{
if (xNodeLoop.NodeType != XmlNodeType.Element)
continue;
switch (xNodeLoop.Name)
{
case "TableCell":
tc = new TableCell(r, this, xNodeLoop, colIndex);
colIndex += tc.ColSpan;
break;
default:
tc=null; // don't know what this is
// don't know this element - log it
OwnerReport.rl.LogError(4, "Unknown TableCells element '" + xNodeLoop.Name + "' ignored.");
break;
}
if (tc != null)
_Items.Add(tc);
}
if (_Items.Count > 0)
_Items.TrimExcess();
}
示例2: Sorting
List<SortBy> _Items; // list of SortBy
public Sorting(ReportDefn r, ReportLink p, XmlNode xNode) : base(r, p)
{
SortBy s;
_Items = new List<SortBy>();
// Loop thru all the child nodes
foreach(XmlNode xNodeLoop in xNode.ChildNodes)
{
if (xNodeLoop.NodeType != XmlNodeType.Element)
continue;
switch (xNodeLoop.Name)
{
case "SortBy":
s = new SortBy(r, this, xNodeLoop);
break;
default:
s=null; // don't know what this is
// don't know this element - log it
OwnerReport.rl.LogError(4, "Unknown Sorting element '" + xNodeLoop.Name + "' ignored.");
break;
}
if (s != null)
_Items.Add(s);
}
if (_Items.Count == 0)
OwnerReport.rl.LogError(8, "Sorting requires at least one SortBy be defined.");
else
_Items.TrimExcess();
}
示例3: StaticColumns
List<StaticColumn> _Items; // list of StaticColumn
public StaticColumns(ReportDefn r, ReportLink p, XmlNode xNode) : base(r, p)
{
StaticColumn sc;
_Items = new List<StaticColumn>();
// Loop thru all the child nodes
foreach(XmlNode xNodeLoop in xNode.ChildNodes)
{
if (xNodeLoop.NodeType != XmlNodeType.Element)
continue;
switch (xNodeLoop.Name)
{
case "StaticColumn":
sc = new StaticColumn(r, this, xNodeLoop);
break;
default:
sc=null; // don't know what this is
// don't know this element - log it
OwnerReport.rl.LogError(4, "Unknown StaticColumns element '" + xNodeLoop.Name + "' ignored.");
break;
}
if (sc != null)
_Items.Add(sc);
}
if (_Items.Count == 0)
OwnerReport.rl.LogError(8, "For StaticColumns at least one StaticColumn is required.");
else
_Items.TrimExcess();
}
示例4: FunctionAggrCountDistinct
string _key; // key used for caching value
/// <summary>
/// Aggregate function: CountDistinct
///
/// Return type is double
/// </summary>
public FunctionAggrCountDistinct(List<ICacheData> dataCache, IExpr e, object scp)
: base(e, scp)
{
_key = "countdistinct" + Interlocked.Increment(ref Parser.Counter).ToString();
dataCache.Add(this);
}
示例5: SeriesGroupings
List<SeriesGrouping> _Items; // list of SeriesGrouping
public SeriesGroupings(ReportDefn r, ReportLink p, XmlNode xNode) : base(r, p)
{
SeriesGrouping sg;
_Items = new List<SeriesGrouping>();
// Loop thru all the child nodes
foreach(XmlNode xNodeLoop in xNode.ChildNodes)
{
if (xNodeLoop.NodeType != XmlNodeType.Element)
continue;
switch (xNodeLoop.Name)
{
case "SeriesGrouping":
sg = new SeriesGrouping(r, this, xNodeLoop);
break;
default:
sg=null; // don't know what this is
break;
}
if (sg != null)
_Items.Add(sg);
}
if (_Items.Count == 0)
OwnerReport.rl.LogError(8, "For SeriesGroupings at least one SeriesGrouping is required.");
else
_Items.TrimExcess();
}
示例6: DataPoints
List<DataPoint> _Items; // list of datapoint
public DataPoints(ReportDefn r, ReportLink p, XmlNode xNode) : base(r, p)
{
DataPoint dp;
_Items = new List<DataPoint>();
// Loop thru all the child nodes
foreach(XmlNode xNodeLoop in xNode.ChildNodes)
{
if (xNodeLoop.NodeType != XmlNodeType.Element)
continue;
switch (xNodeLoop.Name)
{
case "DataPoint":
dp = new DataPoint(r, this, xNodeLoop);
break;
default:
dp=null; // don't know what this is
// don't know this element - log it
OwnerReport.rl.LogError(4, "Unknown DataPoints element '" + xNodeLoop.Name + "' ignored.");
break;
}
if (dp != null)
_Items.Add(dp);
}
if (_Items.Count == 0)
OwnerReport.rl.LogError(8, "For DataPoints at least one DataPoint is required.");
else
_Items.TrimExcess();
}
示例7: TableGroups
List<TableGroup> _Items; // list of TableGroup entries
public TableGroups(ReportDefn r, ReportLink p, XmlNode xNode) : base(r, p)
{
TableGroup tg;
_Items = new List<TableGroup>();
// Loop thru all the child nodes
foreach(XmlNode xNodeLoop in xNode.ChildNodes)
{
if (xNodeLoop.NodeType != XmlNodeType.Element)
continue;
switch (xNodeLoop.Name)
{
case "TableGroup":
tg = new TableGroup(r, this, xNodeLoop);
break;
default:
tg=null; // don't know what this is
// don't know this element - log it
OwnerReport.rl.LogError(4, "Unknown TableGroups element '" + xNodeLoop.Name + "' ignored.");
break;
}
if (tg != null)
_Items.Add(tg);
}
if (_Items.Count == 0)
OwnerReport.rl.LogError(8, "For TableGroups at least one TableGroup is required.");
else
_Items.TrimExcess();
}
示例8: QueryParameters
bool _ContainsArray; // true if any of the parameters is an array reference
public QueryParameters(ReportDefn r, ReportLink p, XmlNode xNode) : base(r, p)
{
_ContainsArray = false;
QueryParameter q;
_Items = new List<QueryParameter>();
// Loop thru all the child nodes
foreach(XmlNode xNodeLoop in xNode.ChildNodes)
{
if (xNodeLoop.NodeType != XmlNodeType.Element)
continue;
switch (xNodeLoop.Name)
{
case "QueryParameter":
q = new QueryParameter(r, this, xNodeLoop);
break;
default:
q=null; // don't know what this is
// don't know this element - log it
OwnerReport.rl.LogError(4, "Unknown QueryParameters element '" + xNodeLoop.Name + "' ignored.");
break;
}
if (q != null)
_Items.Add(q);
}
if (_Items.Count == 0)
OwnerReport.rl.LogError(8, "For QueryParameters at least one QueryParameter is required.");
else
_Items.TrimExcess();
}
示例9: TableRow
List<Textbox> _GrowList; // list of TextBox's that need to be checked for growth
public TableRow(ReportDefn r, ReportLink p, XmlNode xNode) : base(r, p)
{
_TableCells=null;
_Height=null;
_Visibility=null;
_CanGrow = false;
_GrowList = null;
// Loop thru all the child nodes
foreach(XmlNode xNodeLoop in xNode.ChildNodes)
{
if (xNodeLoop.NodeType != XmlNodeType.Element)
continue;
switch (xNodeLoop.Name)
{
case "TableCells":
_TableCells = new TableCells(r, this, xNodeLoop);
break;
case "Height":
_Height = new RSize(r, xNodeLoop);
break;
case "Visibility":
_Visibility = new Visibility(r, this, xNodeLoop);
break;
default:
// don't know this element - log it
OwnerReport.rl.LogError(4, "Unknown TableRow element '" + xNodeLoop.Name + "' ignored.");
break;
}
}
if (_TableCells == null)
OwnerReport.rl.LogError(8, "TableRow requires the TableCells element.");
if (_Height == null)
OwnerReport.rl.LogError(8, "TableRow requires the Height element.");
}
示例10: GroupEntry
List<GroupEntry> _NestedGroup; // group one hierarchy below
public GroupEntry(Grouping g, Sorting s, int start)
{
_Group = g;
_Sort = s;
_StartRow = start;
_EndRow = -1;
_NestedGroup = new List<GroupEntry>();
// Check to see if grouping and sorting are the same
if (g == null || s == null)
return; // nothing to check if either is null
if (s.Items.Count != g.GroupExpressions.Items.Count)
return;
for (int i = 0; i < s.Items.Count; i++)
{
SortBy sb = s.Items[i] as SortBy;
if (sb.Direction == SortDirectionEnum.Descending)
return; // TODO we could optimize this
FunctionField ff = sb.SortExpression.Expr as FunctionField;
if (ff == null || ff.GetTypeCode() != TypeCode.String)
return;
GroupExpression ge = g.GroupExpressions.Items[i] as GroupExpression;
FunctionField ff2 = ge.Expression.Expr as FunctionField;
if (ff2 == null || ff.Fld != ff2.Fld)
return;
}
_Sort = null; // we won't need to sort since the groupby will handle it correctly
}
示例11: StreamGen
public StreamGen(string directory, string relativeDirectory, string ext)
{
_Directory = directory;
_RelativeDirectory = relativeDirectory;
if (_Directory[_Directory.Length-1] == Path.DirectorySeparatorChar ||
_Directory[_Directory.Length-1] == Path.AltDirectorySeparatorChar)
_Directory = _Directory.Substring(0, _Directory.Length-1);
// ensure we have a separator before and after the relative directory name
if (_RelativeDirectory == null)
_RelativeDirectory = Path.DirectorySeparatorChar.ToString();
if (!(_RelativeDirectory[0] == Path.DirectorySeparatorChar ||
_RelativeDirectory[0] == Path.AltDirectorySeparatorChar))
_RelativeDirectory = Path.DirectorySeparatorChar + _RelativeDirectory;
if (!(_RelativeDirectory[_RelativeDirectory.Length-1] == Path.DirectorySeparatorChar ||
_RelativeDirectory[_RelativeDirectory.Length-1] == Path.AltDirectorySeparatorChar))
_RelativeDirectory = _RelativeDirectory + Path.DirectorySeparatorChar;
_FileList = new List<string>();
string relativeName;
_io = GetIOStream(out relativeName, ext);
_FileName = _Directory + relativeName;
_rand = null;
}
示例12: FilterValues
List<FilterValue> _Items; // list of FilterValue
public FilterValues(ReportDefn r, ReportLink p, XmlNode xNode) : base(r, p)
{
FilterValue f;
_Items = new List<FilterValue>();
// Loop thru all the child nodes
foreach(XmlNode xNodeLoop in xNode.ChildNodes)
{
if (xNodeLoop.NodeType != XmlNodeType.Element)
continue;
switch (xNodeLoop.Name)
{
case "FilterValue":
f = new FilterValue(r, this, xNodeLoop);
break;
default:
f=null; // don't know what this is
// don't know this element - log it
OwnerReport.rl.LogError(4, "Unknown FilterValues element '" + xNodeLoop.Name + "' ignored.");
break;
}
if (f != null)
_Items.Add(f);
}
if (_Items.Count == 0)
OwnerReport.rl.LogError(8, "For FilterValues at least one FilterValue is required.");
else
_Items.TrimExcess();
}
示例13: MatrixRows
List<MatrixRow> _Items; // list of MatrixRow
public MatrixRows(ReportDefn r, ReportLink p, XmlNode xNode) : base(r, p)
{
MatrixRow m;
_Items = new List<MatrixRow>();
// Loop thru all the child nodes
foreach(XmlNode xNodeLoop in xNode.ChildNodes)
{
if (xNodeLoop.NodeType != XmlNodeType.Element)
continue;
switch (xNodeLoop.Name)
{
case "MatrixRow":
m = new MatrixRow(r, this, xNodeLoop);
break;
default:
m=null; // don't know what this is
// don't know this element - log it
OwnerReport.rl.LogError(4, "Unknown MatrixRows element '" + xNodeLoop.Name + "' ignored.");
break;
}
if (m != null)
_Items.Add(m);
}
if (_Items.Count == 0)
OwnerReport.rl.LogError(8, "For MatrixRows at least one MatrixRow is required.");
else
_Items.TrimExcess();
}
示例14: ChartData
List<ChartSeries> _Items; // list of chart series
public ChartData(ReportDefn r, ReportLink p, XmlNode xNode) : base(r, p)
{
ChartSeries cs;
_Items = new List<ChartSeries>();
// Loop thru all the child nodes
foreach(XmlNode xNodeLoop in xNode.ChildNodes)
{
if (xNodeLoop.NodeType != XmlNodeType.Element)
continue;
switch (xNodeLoop.Name)
{
case "ChartSeries":
cs = new ChartSeries(r, this, xNodeLoop);
break;
default:
cs=null; // don't know what this is
// don't know this element - log it
OwnerReport.rl.LogError(4, "Unknown ChartData element '" + xNodeLoop.Name + "' ignored.");
break;
}
if (cs != null)
_Items.Add(cs);
}
if (_Items.Count == 0)
OwnerReport.rl.LogError(8, "For ChartData at least one ChartSeries is required.");
else
_Items.TrimExcess();
}
示例15: RowGroupings
public RowGroupings(ReportDefn r, ReportLink p, XmlNode xNode) : base(r, p)
{
RowGrouping g;
_Items = new List<RowGrouping>();
// Loop thru all the child nodes
foreach(XmlNode xNodeLoop in xNode.ChildNodes)
{
if (xNodeLoop.NodeType != XmlNodeType.Element)
continue;
switch (xNodeLoop.Name)
{
case "RowGrouping":
g = new RowGrouping(r, this, xNodeLoop);
break;
default:
g=null; // don't know what this is
// don't know this element - log it
OwnerReport.rl.LogError(4, "Unknown RowGroupings element '" + xNodeLoop.Name + "' ignored.");
break;
}
if (g != null)
_Items.Add(g);
}
if (_Items.Count == 0)
OwnerReport.rl.LogError(8, "For RowGroupings at least one RowGrouping is required.");
else
{
_Items.TrimExcess();
_StaticCount = GetStaticCount();
}
}