如何阅读 ScintillaNET class 的文本 属性
How to read Text property of ScintillaNET class
我正在尝试使用 ScintillaNET 构建一个简单的 Python 编辑器,现在正在尝试 return 输入。
我有一个 class PythonScriptView
:
public class PythonScriptView : Scintilla
{
// setup python syntax highlighting
}
和一个 Form
,它由一个 PythonScriptView
组件和一个 OK 按钮组成。在这个 class 中,我想构建一个函数来显示我的 PythonScriptView
的表单和 return 文本 属性。我为另一个小对话框 window 做了这个,它使用文本框作为输入字段,现在正在尝试使用 scintilla 编辑器进行同样的操作:
public string GetUserInput()
{
ShowDialog();
return ScriptView.Text; // ScriptView is of Type PythonScriptView
}
当我 运行 应用程序时,我收到以下错误消息:
An unhandled exception of type 'System.AccessViolationException' occurred in ScintillaNET.dll
有谁知道如何解决这个问题?我还能如何阅读文本 属性?
编辑:
似乎我无法从此 class
访问 任何 属性或方法
我遇到了同样的问题,似乎由于 ScintillaNET 的工作方式,一旦元素被处理到表单关闭,您将无法访问任何属性。我通过将以下事件和 属性 添加到我的表单找到了解决方法。
private void FormClosing(object sender, FormClosingEventArgs e)
{
CachedText = scintilla.Text;
}
public string CachedText { get; private set; }
我正在尝试使用 ScintillaNET 构建一个简单的 Python 编辑器,现在正在尝试 return 输入。
我有一个 class PythonScriptView
:
public class PythonScriptView : Scintilla
{
// setup python syntax highlighting
}
和一个 Form
,它由一个 PythonScriptView
组件和一个 OK 按钮组成。在这个 class 中,我想构建一个函数来显示我的 PythonScriptView
的表单和 return 文本 属性。我为另一个小对话框 window 做了这个,它使用文本框作为输入字段,现在正在尝试使用 scintilla 编辑器进行同样的操作:
public string GetUserInput()
{
ShowDialog();
return ScriptView.Text; // ScriptView is of Type PythonScriptView
}
当我 运行 应用程序时,我收到以下错误消息:
An unhandled exception of type 'System.AccessViolationException' occurred in ScintillaNET.dll
有谁知道如何解决这个问题?我还能如何阅读文本 属性?
编辑:
似乎我无法从此 class
访问 任何 属性或方法我遇到了同样的问题,似乎由于 ScintillaNET 的工作方式,一旦元素被处理到表单关闭,您将无法访问任何属性。我通过将以下事件和 属性 添加到我的表单找到了解决方法。
private void FormClosing(object sender, FormClosingEventArgs e)
{
CachedText = scintilla.Text;
}
public string CachedText { get; private set; }