ScheduleDefinitionAddField(SchedulableField) Method |
Adds a regular field at the end of the list.
Namespace: Autodesk.Revit.DBAssembly: RevitAPI (in RevitAPI.dll) Version: 27.0.4.0 (27.0.4.0)
Syntaxpublic ScheduleField AddField(
SchedulableField schedulableField
)
Public Function AddField (
schedulableField As SchedulableField
) As ScheduleField
public:
ScheduleField^ AddField(
SchedulableField^ schedulableField
)
member AddField :
schedulableField : SchedulableField -> ScheduleField Parameters
- schedulableField SchedulableField
-
A SchedulableField object representing the field.
Return Value
ScheduleField
The new field.
Exceptions| Exception | Condition |
|---|
| ArgumentException |
The field specified by schedulableField may not included in this ScheduleDefinition.
-or-
The field specified by schedulableField is already included in this ScheduleDefinition.
|
| ArgumentNullException |
A non-optional argument was null
|
Example
public void AddFieldToSchedule(Document document, List<ViewSchedule> schedules)
{
using (Transaction transaction = new Transaction(document, "Adding fields to schedule"))
{
transaction.Start();
foreach (ViewSchedule vs in schedules)
{
IList<SchedulableField> schedulableFields = vs.Definition.GetSchedulableFields();
foreach (SchedulableField sf in schedulableFields)
{
bool fieldAlreadyAdded = false;
IList<ScheduleFieldId> ids = vs.Definition.GetFieldOrder();
foreach (ScheduleFieldId id in ids)
{
if (vs.Definition.GetField(id).GetSchedulableField() == sf)
{
fieldAlreadyAdded = true;
break;
}
}
if (fieldAlreadyAdded == false)
{
vs.Definition.AddField(sf);
}
}
}
transaction.Commit();
}
}
See Also