在NX8.5中使用C#编辑表达式中有个坑,part.Expressions.Edit该方法鲁棒性很差,当表达式有错时也能编辑成功(手动在NX中增加错误表达式会有弹框,无法创建,而该方法却可以,疑是bug),建议使用表达式对象的RightHandSide属性进行设置。错误的表达式导致对象在保存或者设为显示部件、工作部件时,NX报“Update undo happened”错误!

如下图:

一个简单的例子:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using NXOpen;
using NXOpen.Utilities;
using NXOpen.UF; namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Session theSession = Session.GetSession();
UFSession theUfSession = UFSession.GetUFSession();
UFUi theUFUi = theUfSession.Ui; string path = @"D:\test model\_asm1.prt";
NXOpen.Tag obj = NXOpen.Tag.Null;
UFPart.LoadStatus LoadStatus;
theUfSession.Part.Open(path, out obj, out LoadStatus);
NXOpen.Part part = theSession.Parts.Display; try
{
foreach (Expression p in part.Expressions)
{
if ("a" == p.Name)
{
p.RightHandSide = "4";
//part.Expressions.Edit(p, "ab*cd*ef+5");
p.EditComment("测试");
}
} //Expression exp = part.Expressions.Create("a=1"); }
catch(Exception ex)
{
Console.WriteLine(ex.Message);
} theUfSession.Part.Save();
theUfSession.Part.CloseAll();
}
}
}

创建表达式(part.Expressions.Create)方法和编辑表达式(RightHandSide)属性,当表达式错误时会抛出异常,使用try catch根据这点判断表达式是否正确。

最新文章

  1. html iframe 元素之间的调用
  2. 配置163Yum源自动判断你的系统是Centos版本(适用于5.x或6.x)
  3. 强连通 HDU 3861
  4. fgets读取文件时的注意事项
  5. 组合数学 - 母函数的变形 --- hdu 1171:Big Event in HDU
  6. POJ 1364 King --差分约束第一题
  7. 客户端 ios与android 的判断
  8. 【web性能】web性能测试工具推荐
  9. UIPickerView基本用法
  10. java String 空指针异常
  11. linux系统启动oracle
  12. “ASP.default_aspx”并不包括“DropDownList1_SelectedIndexChanged”的定义,其解决方法。
  13. 基于queryperf 和 perftcpdns 的DNS压力测试
  14. Python内置函数(7)——sum
  15. 见过的最全的iOS面试题
  16. OpenCV__type()返回的数字
  17. linq Distinct 自定义去重字段
  18. (4opencv)OpenCV PR 成功的收获和感悟
  19. openal支持的通道数和声道数
  20. Prometheus Node_exporter 之 Network Netstat TCP Linux MIPs

热门文章

  1. 下拉菜单,下拉导航,JavaScript,html,jQuery的实现代码
  2. 牛客网PAT练兵场-人口普查
  3. day40:python操作mysql:pymysql模块&SQL注入攻击
  4. IDEA run/debug configurations中没有配置tomcat选项
  5. 以Winsows Service方式运行JupyterLab
  6. go语言基础实例
  7. Cobalt strike与内网渗透
  8. Illegal instruction报错 c/c++
  9. Android开发java程序员常用代码,将字符串以逗号分别取出字符串String
  10. 【HttpRunner v3.x】笔记 ——5. 测试用例-config