Customer question that I received:
I have drawing “A” and it is xref’d into drawing “B”. If I change the color of a layer in drawing “A”, the color of the layer will not update on drawing “B”. I have VISRETAIN set to 1 so the color should automatically change. The only way I can fix this is to detach the xref and attach it again. If I have a drawing with multiple tabs and the xref is on each tab (title block in paper space for example), I have to delete the xref from each tab, detach and reattach. What could be causing this?
Alison Gangler, Autodesk Product Support
Alison Gangler
Autodesk Product Support
Autodesk, Inc.
I thought visretain had to be 0 to update the layer color.
If not, any chance the layer is locked?
Since visretain holds not just colors but also layers set in current drawing, I probably wouldn't change that setting. Chances are I would just change the color in the current drawing. That would take less time than detaching and reloading the xref and setting the layers up again. (unless all are on and thawed of course)
I also think you want visretain at zero but I think you have to reopen the active dwg to see the changes.
John Mayo
This may work...
Good luck.
That would work fine unless the user needs to keep layers frozen/thawed differently in DWG A vs DWG B.
I have the same problem quite often. My trick is to rename the layer in drawing "A", then drawing "B" thinks it is a new layer, and updates the color. So, I change "text" to "textA". for example. If I change the color again, I change the layer name back to orginal.
I'm going to assume this wasn't the case back in 2010 but... In the 2012 version I'm working in, when you attach an xref it creates layers in your drawing with the suffix being the name of the xref drawing. If this is obvious to everyone now, then sorry for this post. But I was looking through this thread and then found that out.
I used to hate how many extra layers showed up but it makes changing the colors or freezing layers easier without affecting the original drawing.