Hello, I'm trying to develop an add-in for creating Display Rules in c #. I have a problem creating the condition to pass as a parameter to the constructor of the DisplayRule class.At this link "">www.bimsdks.com/.../structBentley_1_1DgnPlatform_1_1DisplayRule.html" I found some examples (see Condition format and types) but they are very few.
I implemented the following code that works:
string MyRuleCondition = @"element.IsOfClass (""ShapeElement"",""DgnElementSchema"")";
DisplayRuleSet displayRuleSet = new DisplayRuleSet(RuleStenName, dgnFile);DisplayRulesManager.WriteDisplayRuleSetToFile(displayRuleSet, dgnFile, true);DisplayRule displayRuleElement = new DisplayRule(MyRuleCondition, true, dgnFile);
IDisplayRuleAction ruleAction = new ColorOverrideAction(5, dgnFile);displayRuleElement.AddAction(ruleAction);displayRuleSet.AddDisplayRule(displayRuleElement);DisplayRulesManager.WriteDisplayRuleSetToFile(displayRuleSet, dgnFile, true);
keyInCommand.SendKeyin("MDL KEYIN CUSTOMDISPMODE DIALOG DISPLAYSTYLES");keyInCommand.SendKeyin(@"DISPLAYSTYLE CREATE ""DISPLAY_STYLE_BY_KEYIN""");
keyInCommand.SendKeyin(@"MDL KEYIN VIEWCTRL CHANGE VIEW CUSTOM ""DISPLAY_STYLE_BY_KEYIN"" 1");keyInCommand.SendKeyin(@"DISPLAYSTYLE SETPARAM DISPLAYRULESET ""DISPLAY_STYLE_BY_KEYIN"" ""Rule""");ustnApp.CommandState.StartDefaultCommand();
I should implement a RuleCondition that evaluates the value of a property of an ItemType,does anyone know a way, a tool, or examples (in c #) to create RuleConditions?
Thanks for the help, greetings
salvatore montella said:I should implement a RuleCondition that evaluates the value of a property of an ItemType
I too would like to find the programming answer to your question.
The syntax of expressions, rules, reports and queries is not intuitive, well-documented or well-supplied with examples. But if more of us demonstrate our interest to Bentley Systems, perhaps they will react positively?
salvatore montella said:Is there a reference guide describing the schemas and the expression syntax?
That too would be useful.
Regards, Jon Summers LA Solutions