当前位置: 移动技术网 > IT编程>开发语言>c# > 解决锁定图层,图形不淡显的问题

解决锁定图层,图形不淡显的问题

2019年12月18日  | 移动技术网IT编程  | 我要评论

锁定图层是我们常用的功能,其代码如下:

public static void locklayer(layertablerecord layer, document doc)
{
    using (var trans = doc.transactionmanager.starttransaction())
    {
        layer.upgradeopen();
        layer.islock = true;
        trans.commit();
    }
}

经测试发现,在图层管理器图层是锁定了,但是模型空间种,对应的图层却并没有锁定的淡显效果。笔者推测需要重新生成一下图形,故增加以下代码重新生成图形:

doc.editor.regen();

然而问题仍然没有解决,经查阅资料,需要重新设置一下图层关闭状态,才可以刷新显示。增加的代码如下:

layer.isoff = layer.isoff;

最终问题得以解决。完整代码如下:

public static void locklayer(layertablerecord layer, document doc)
{
    using (var trans = doc.transactionmanager.starttransaction())
    {
        layer.upgradeopen();
        layer.islock = true;
        layer.isoff = layer.isoff;//刷新显示
        trans.commit();
        doc.editor.regen();
    }
}

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网