public void SelectElementsInLinkedDoc(Autodesk.Revit.DB.Document CurrDoc)
{
UIDocument CurrUIDoc = new UIDocument(CurrDoc);
Selection CurrDocSelection = CurrUIDoc.Selection;
var linkedDocs = GetLinkedDocuments(CurrDoc);
var firstLinkedDoc = linkedDocs.FirstOrDefault();
var LinkedUIDoc = new UIDocument(firstLinkedDoc);
Selection LinkedDocSelection = LinkedUIDoc.Selection;
List<ElementId> RefElementIdLinkedElementsList = new List<ElementId>();
bool Halt = false;
while (!Halt)
{
try
{
Reference CurrRef = CurrDocSelection.PickObject(ObjectType.LinkedElement, "Select element in a linked document");
if (CurrRef != null)
RefElementIdLinkedElementsList.Add(LinkedUIDoc.Document.GetElement(CurrRef).Id);
LinkedDocSelection.SetElementIds(RefElementIdLinkedElementsList);
}
catch (Autodesk.Revit.Exceptions.OperationCanceledException UserCancelEx)
{
Halt = true;
}
}
}