diff --git a/src/CAD/IFox.CAD.Shared/ExtensionMethod/RedrawEx.cs b/src/CAD/IFox.CAD.Shared/ExtensionMethod/RedrawEx.cs
index c42ec5c79aefed9025fe2363e6d9514755a39809..f58f51d437f4679d3c66729e93c7c333c9e17e29 100644
--- a/src/CAD/IFox.CAD.Shared/ExtensionMethod/RedrawEx.cs
+++ b/src/CAD/IFox.CAD.Shared/ExtensionMethod/RedrawEx.cs
@@ -68,16 +68,20 @@ public static class RedrawEx
/// 刷新屏幕
///
/// 编辑器
- /// 图元,调用时候图元必须提权
+ /// 图元
public static void Redraw(this Editor ed, Entity? ent = null)
{
- // 刷新图元
- ent?.Redraw(BrightEntity.Draw |
- BrightEntity.RecordGraphicsModified |
- BrightEntity.RecomputeDimensionBlock |
- BrightEntity.MoveZero);
- // 刷新
- ed.Redraw(BrightEditor.UpdateScreen);
+ using (ent?.ForWrite())
+ {
+ // 刷新图元
+ ent?.Redraw(BrightEntity.Draw |
+ BrightEntity.RecordGraphicsModified |
+ BrightEntity.RecomputeDimensionBlock |
+ BrightEntity.MoveZero);
+ // 刷新
+ ed.Redraw(BrightEditor.UpdateScreen);
+ }
+
/*
* 我发现命令加 CommandFlags.Redraw 就不需要以下处理了: