本文整理汇总了C#中fyiReporting.RDL.List类的典型用法代码示例。如果您正苦于以下问题:C# List类的具体用法?C# List怎么用?C# List使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
List类属于fyiReporting.RDL命名空间,在下文中一共展示了List类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TableGroups
List<TableGroup> _Items; // list of TableGroup entries
internal 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();
}
示例2: ParameterValues
List<ParameterValue> _Items; // list of ParameterValue
#endregion Fields
#region Constructors
internal ParameterValues(ReportDefn r, ReportLink p, XmlNode xNode)
: base(r, p)
{
ParameterValue pv;
_Items = new List<ParameterValue>();
// Loop thru all the child nodes
foreach(XmlNode xNodeLoop in xNode.ChildNodes)
{
if (xNodeLoop.NodeType != XmlNodeType.Element)
continue;
switch (xNodeLoop.Name)
{
case "ParameterValue":
pv = new ParameterValue(r, this, xNodeLoop);
break;
default:
pv=null; // don't know what this is
// don't know this element - log it
OwnerReport.rl.LogError(4, "Unknown ParameterValues element '" + xNodeLoop.Name + "' ignored.");
break;
}
if (pv != null)
_Items.Add(pv);
}
if (_Items.Count == 0)
OwnerReport.rl.LogError(8, "For ParameterValues at least one ParameterValue is required.");
else
_Items.TrimExcess();
}
示例3: TableCells
List<TableCell> _Items; // list of TableCell
internal 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();
}
示例4: GroupExpressions
List<GroupExpression> _Items; // list of GroupExpression
internal GroupExpressions(ReportDefn r, ReportLink p, XmlNode xNode) : base(r, p)
{
GroupExpression g;
_Items = new List<GroupExpression>();
// Loop thru all the child nodes
foreach(XmlNode xNodeLoop in xNode.ChildNodes)
{
if (xNodeLoop.NodeType != XmlNodeType.Element)
continue;
switch (xNodeLoop.Name)
{
case "GroupExpression":
g = new GroupExpression(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 GroupExpressions element '" + xNodeLoop.Name + "' ignored.");
break;
}
if (g != null)
_Items.Add(g);
}
if (_Items.Count == 0)
OwnerReport.rl.LogError(8, "GroupExpressions require at least one GroupExpression be defined.");
else
_Items.TrimExcess();
}
示例5: DataPoints
List<DataPoint> _Items; // list of datapoint
internal 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();
}
示例6: BuildTable
private string BuildTable()
{
StringBuilder sb = new StringBuilder();
float width = TableWidth();
sb.AppendFormat("<table style=\"table-layout:fixed;width:{0}pt;border-style:none;border-collapse:collapse;\">", width);
// Define the columns
sb.Append("<colgroup>");
List<ReportItem> riSort = new List<ReportItem>(_ris.Items);
riSort.Sort(CompareRIsByX);
// float last_offset=0;
float offset;
float pt;
for (int i = 0; i < riSort.Count; i++)
{
pt = riSort[i].LeftCalc(_rpt);
sb.AppendFormat("<col style=\"width:{0}pts;\">", pt);
offset = pt + riSort[i].WidthOrOwnerWidth(_rpt);
// if (last_offset < offset)
}
sb.Append("</colgroup>");
// Define the rows
riSort.Sort(CompareRIsByY);
sb.Append("</table>");
return sb.ToString();
}
示例7: FunctionAggrStdevp
string _key; // key for cache when scope is dataset we can cache the result
/// <summary>
/// Aggregate function: Stdevp = (sqrt(n sum(square(x)) - square((sum(x))) / n*n)
/// Stdev assumes values are a sample of the population of data. If the data
/// is the entire representation then use Stdevp.
///
/// Return type is decimal for decimal expressions and double for all
/// other expressions.
/// </summary>
public FunctionAggrStdevp(List<ICacheData> dataCache, IExpr e, object scp)
: base(e, scp)
{
_key = "aggrstdevp" + Interlocked.Increment(ref Parser.Counter).ToString();
dataCache.Add(this);
}
示例8: ColumnGroupings
internal ColumnGroupings(ReportDefn r, ReportLink p, XmlNode xNode) : base(r, p)
{
ColumnGrouping g;
_Items = new List<ColumnGrouping>();
// Loop thru all the child nodes
foreach(XmlNode xNodeLoop in xNode.ChildNodes)
{
if (xNodeLoop.NodeType != XmlNodeType.Element)
continue;
switch (xNodeLoop.Name)
{
case "ColumnGrouping":
g = new ColumnGrouping(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 ColumnGroupings element '" + xNodeLoop.Name + "' ignored.");
break;
}
if (g != null)
_Items.Add(g);
}
if (_Items.Count == 0)
OwnerReport.rl.LogError(8, "For ColumnGroups at least one ColumnGrouping is required.");
else
{
_Items.TrimExcess();
_StaticCount = GetStaticCount();
}
}
示例9: TableRow
List<Textbox> _GrowList; // list of TextBox's that need to be checked for growth
internal 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: Page
float _yOffset; // current y offset; top margin, page header, other details, ...
#endregion Fields
#region Constructors
public Page(int page)
{
_pageno = page;
_items = new List<PageItem>();
_emptyItems = 0;
_needSort = false;
}
示例11: CodeModules
List<CodeModule> _Items; // list of code module
#endregion Fields
#region Constructors
internal CodeModules(ReportDefn r, ReportLink p, XmlNode xNode)
: base(r, p)
{
_Items = new List<CodeModule>();
// Loop thru all the child nodes
foreach(XmlNode xNodeLoop in xNode.ChildNodes)
{
if (xNodeLoop.NodeType != XmlNodeType.Element)
continue;
if (xNodeLoop.Name == "CodeModule")
{
CodeModule cm = new CodeModule(r, this, xNodeLoop);
_Items.Add(cm);
}
else
{
// don't know this element - log it
OwnerReport.rl.LogError(4, "Unknown CodeModules element '" + xNodeLoop.Name + "' ignored.");
}
}
if (_Items.Count == 0)
OwnerReport.rl.LogError(8, "For CodeModules at least one CodeModule is required.");
else
_Items.TrimExcess();
}
示例12: GroupEntry
List<GroupEntry> _NestedGroup; // group one hierarchy below
internal 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
}
示例13: DrillthroughParameters
List<DrillthroughParameter> _Items; // list of report items
internal DrillthroughParameters(ReportDefn r, ReportLink p, XmlNode xNode) : base(r, p)
{
DrillthroughParameter d;
_Items = new List<DrillthroughParameter>();
// Loop thru all the child nodes
foreach(XmlNode xNodeLoop in xNode.ChildNodes)
{
if (xNodeLoop.NodeType != XmlNodeType.Element)
continue;
switch (xNodeLoop.Name)
{
case "Parameter":
d = new DrillthroughParameter(r, this, xNodeLoop);
break;
default:
d=null; // don't know what this is
// don't know this element - log it
OwnerReport.rl.LogError(4, "Unknown Parameters element '" + xNodeLoop.Name + "' ignored.");
break;
}
if (d != null)
_Items.Add(d);
}
if (_Items.Count > 0)
_Items.TrimExcess();
}
示例14: 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;
}
示例15: ChartData
List<ChartSeries> _Items; // list of chart series
internal 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();
}