主要区别:
Property的值会存储在硬盘里;
Field的值在关闭文件后清除。
在下面例子中:
1. 创建一个属性 MyPropertyInt
2. 创建一个属性 PE1,并且自动链接到PE1
3. 创建一个字段 MyFieldInt
4. 在OnInitialize事件中增加PE1的 NativeListeners
5. 在OnBlocked中自增,注意,属性的引用需要this.MyPropertyInt.Value
6. 文件不关闭的情况下,属性和字段的值都存在
7. 保存并关闭然后再打开文件,属性的值还在,而字段的值已经清零。
[Auto] public class Cascade_ConveyorScript : NativeObject {
[Auto] SimplePropertyValue<int> MyPropertyInt;
[Auto] PhotoEye PE1;
int MyFieldInt;
public Cascade_ConveyorScript(Visual sender) : base(sender) {}
[Auto] void OnReset(Visual sender) {
print("My property value: " + this.MyPropertyInt);
print("My Field value: " + this.MyFieldInt);
}
[Auto] void OnInitialize(Visual sender)
{
this.PE1.OnBlocked.NativeListeners