首页 > 解决方案 > C# MS ClearView 直接通过另一个属性的值访问一个属性

问题描述

我正在使用 MS ClearScript 制作脚本程序。我希望能够间接引用一个属性,而不必输入我的类的值成员。

这是我的课:

namespace WpfApp1
{
    public class TagIO
    {
        public string name { get; set; }
        public int value { get; set; }
    }
}

我创建一个集合并将主机对象添加到脚本引擎,如下所示:

ObservableCollection<TagIO> InputCollection = new ObservableCollection<TagIO>();

foreach (var InputTag in InputCollection)
{
   if (InputTag != null)
     scriptEngine.AddHostObject(InputTag.name, InputTag);
}

我可以使用以下行运行脚本:

a.value = b.value;

但我想改进这一点,以便我可以执行以下操作:

a = b;

标签: c#clearscript

解决方案


而不是使用AddHostObject,请执行以下操作:

scriptEngine.Script[InputTag.name] = InputTag;

推荐阅读