是否可以从托管 IronPython 环境中执行的 Python 脚本中检索行号?我想在脚本执行时以某种方式在托管环境之外(在托管应用程序中)的 AvalonEdit 控件中突出显示该行。
问问题
561 次
1 回答
2
我已经想通了,可以通过简单地给脚本引擎一个跟踪回调方法并(可能是异步地)触发一个适当的事件来相应地刷新 IBackgroundRenderer ......嗯......它工作。
strategyScriptEngine.SetTrace(IronPythonTraceBack);
strategyScriptEngine.Execute(script, strategyScope);
在同一班的其他地方:
private static TracebackDelegate IronPythonTraceBack(TraceBackFrame frame, string result, object payload)
{
if (IronPythonExecutingLine != null) IronPythonExecutingLine((int)frame.f_lineno);
return IronPythonTraceBack;
}
于 2013-03-14T18:34:46.180 回答