View Get |
Gets the graphic overrides of a RevitLinkType or RevitLinkInstance in view.
Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)

Parameters
- linkId ElementId
- The id of the RevitLinkType or RevitLinkInstance .
Return Value
RevitLinkGraphicsSettingsSettings representing graphic overrides for the input element id in the view, or if the input id references RevitLinkInstance and it doesn't have overrides in the view.

Exception | Condition |
---|---|
ArgumentException | The input id is not a valid RevitLinkInstance or RevitLinkType id. |
ArgumentNullException | A non-optional argument was null |

C#
public static void PrintLinkOverridesInView(View view)
{
var ids = new FilteredElementCollector(view.Document)
.WhereElementIsElementType()
.OfType<RevitLinkType>()
.Select(link => link.Id)
.ToList();
ids.AddRange(new FilteredElementCollector(view.Document)
.WhereElementIsNotElementType()
.OfType<RevitLinkInstance>()
.Select(link => link.Id)
.ToList());
StringBuilder message = new StringBuilder();
message.AppendLine("View: " + view.Id.ToString());
foreach(ElementId id in ids)
{
message.AppendLine("Element Id in the view: " + id.ToString());
RevitLinkGraphicsSettings settings = view.GetLinkOverrides(id);
if (settings == null)
{
message.AppendLine("It doesn't have graphical overrides in the view.");
continue;
}
message.AppendLine(" LinkVisibilityType " + settings.LinkVisibilityType);
message.AppendLine(" LinkedView: " + settings.LinkedViewId.Value.ToString());
message.AppendLine(" ViewFilterType: " + settings.ViewFilterType);
message.AppendLine(" ViewRange: " + settings.ViewRange);
message.AppendLine(" ColorFill: " + settings.ColorFill);
message.AppendLine(" ObjectStyles: " + settings.ObjectStyles);
message.AppendLine(" NestedLinks: " + settings.NestedLinks);
message.AppendLine(string.Format(" Discipline has type {0} and value: {1}",
settings.GetDisciplineType(), settings.GetDiscipline()));
message.AppendLine(string.Format(" Phase has type {0} and value: {1}",
settings.GetPhaseType(), settings.GetPhaseId().ToString()));
message.AppendLine(string.Format(" PhaseFilter has type {0} and value: {1}",
settings.GetPhaseFilterType(), settings.GetPhaseFilterId().ToString()));
message.AppendLine(string.Format(" ViewDetailLevel has type {0} and value: {1}",
settings.GetViewDetailLevelType(), settings.GetViewDetailLevel()));
}
TaskDialog.Show("Link Overrides report", message.ToString());
}
