SuperScript是C#脚本引擎,它为您的WinForms和WPF应用程序带来了高效的代码编辑功能。
它提供了代码编辑功能,如语法高亮显示、智能代码提示和代码完成、语法错误,
它支持类库引用,编译及导出等等,使用它好比您在Visual Studio中编码一样,速度和便利性相媲美。
使用它,可以极大的发挥您的应用程序扩展和开放性,
使得您的程序在发布后,也可支持用户自定义编辑和运行脚本。
下载地址:
(1)脚本DEMO-集成示例
链接:https://pan.baidu.com/s/1RKt-6ybRSxmDLFtFJRE_qA
提取码:1057
(2)脚本DEMO-编译版
链接:https://pan.baidu.com/s/1hkHJ5UUW28Ui2kromvQCsw
提取码:ff9z
以下是扩展简单示例:
比如您的应用程序有个计算功能,它允许用户根据用户输入值,通过编辑脚本自定义输出结果功能,如实现字符串倒叙功能。
示例代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
using Wagwei.FCL.SuperScript;
namespace TestScript
{
public partial class FrmTest : Form
{
private CalcBase calcBase = null;
private WagScriptBuild<CalcBase> build = null;
private string _script = "";
public FrmTest()
{
InitializeComponent();
string data = File.ReadAllText(Path.Combine(Application.StartupPath, "demo.wagscript"));
_script = data;
}
private void _Load(object sender, EventArgs e)
{
build = new WagScriptBuild<CalcBase>(_script);
calcBase = build.BuildScript(false);
}
public class CalcBase
{
public virtual string Calc(string input)
{
string output = input;
return output;
}
}
/// <summary>修改脚本</summary>
private void btn_srcipt_Click(object sender, EventArgs e)
{
build.EditExistingScript(true);
string s = build.m_WagScriptSupport.SaveToStr("");
_script = s;
calcBase = build.BuildScript(false);
}
/// <summary>计算</summary>
private void btn_run_Click(object sender, EventArgs e)
{
string input = this.txt_input.Text.Trim();
string output = this.calcBase.Calc(input);
this.txt_output.Text = output;
}
}
}