Variable

Объект; не имеет графического отображения.

Шаблон Variable

<MyObject Name="" Type="Variable" Assembly="SimpleControls" ChangeForm="">
  <Change User="" Source="" ValueSet="" />
  <Value></Value>
</MyObject>

Описание Variable

<MyObject Name="" Type="Variable" Assembly="SimpleControls" ChangeForm="True">
  <!--Тэги, специфичные для Variable-->
</MyObject>

Атрибуты объекта Variable

Name

Название объекта Variable.

Обязательный атрибут.

Type

Название типа объекта Variable в сборке.

Обязательный атрибут.

Assembly

Название сборки (библиотека).

Обязательный атрибут.

Получение значения Variable

Значением Variable считается значение, указанное в тэге <Value>.

<Object Name="VariableName" />

Значение объекта: любое значение.

Задание значения Variable

<Object Name="VariableName"></Object>

Тэги, специфичные для Variable

Change

Настройки изменения проперти ValueChanged объекта.

Необязательный тэг.

Если тэг <Change> отсутствует, то для атрибутов User, Source и ValueSet используются значения True, True, и True соответственно.

<Change User="True" Source="False" ValueSet="True" />

Атрибуты тэга <Change>

User

Признак, будет ли ValueChanged иметь значение True, если пользователь в графическом интерфейсе изменит значение объекта.

Обязательный атрибут. Ожидается логическое значение.

Source

Признак, будет ли ValueChanged иметь значение True, если значение объекта перезагрузится из источника.

Если атрибут Source имеет значение False, и при этом значение из источника перезагрузилось, то ValueChanged будет иметь значение False.

Обязательный атрибут. Ожидается логическое значение.

ValueSet

Признак, будет ли ValueChanged иметь значение True, если значение объекта будет присвоено из команды ValueSetCommand.

Если атрибут ValueSet имеет значение False, и при этом значение было присвоено из команды ValueSetCommand, то ValueChanged будет иметь значение False.

Обязательный атрибут. Ожидается логическое значение.

Value

Значение объекта Variable.

Необязательный тэг. Значение тэга <Value>: любое значение.

Если тэг <Value> отсутствует, то используется значение NULL.

<Value>Value</Value>

Get-проперти для получения свойств

Value

Возвращает значение объекта Variable, если он его имеет.

<Object Name="VariableName">
  <Property Name="Value" />
</Object>

ValueChanged

Возвращает признак того, было ли изменено значение объекта Variable в процессе работы.

Есть 3 способа изменить значение объекта:

  1. Изменить значение прямым образом в графическом интерфейсе формы, с помощью set-проперти ValueChanged.

  2. Указать источник значения (ссылка на любые данные на форме). В случае изменения значения в источнике, автоматически изменится значение и самого объекта.

  3. Присвоить значение объекту посредством команды ValueSetCommand.

<Object Name="VariableName">
  <Property Name="ValueChanged" />
</Object>

Set-проперти для динамического задания свойств

Value

Задает значение объекта Variable.

Значение тэга <Property>: любое значение.

<Object Name="VariableName">
  <Property Name="Value">Value</Property>
</Object>

ValueChanged

Задает признак изменения значения объекта Variable.

Значение тэга <Property>: ожидается логическое значение.

<Object Name="VariableName">
  <Property Name="ValueChanged">False</Property>
</Object>

Примеры

Работают только со числами. Со строками не работают вообще.

Пример 1. Работающий.

<MyObject Name="Variable" Type="Variable" Assembly="SimpleControls">
  <Value>
	<Calculate>
	  <Expression>if({0}={1}, 1, 2)</Expression>
	  <Items>
		<Item>1</Item>
		<Item>0</Item>
	  </Items>
	</Calculate>
  </Value>
</MyObject>

Пример 2. Не работающий.

<MyObject Name="Variable" Type="Variable" Assembly="SimpleControls">
  <Value>
	<Calculate>
	  <Expression>if({0}='test', 1, 2)</Expression>
	  <Items>
		<Item>test</Item>
		<Item>0</Item>
	  </Items>
	</Calculate>
  </Value>
</MyObject>

Last updated