Freigeben über


Bedingte Attribute des VSCT-XML-Schemas

Sie können bedingte Attribute auf alle Listen und Elemente anwenden. Logische Operatoren und Symbolerweiterungsausdrücke werden als wahr oder falsch ausgewertet. Wenn true, wird die zugeordnete Liste oder das zugeordnete Element in der resultierenden Ausgabe enthalten.

Sie können Tokenerweiterungen mit anderen Tokenerweiterungen oder Konstanten testen. Die Funktion Defined() prüft, ob ein bestimmter Name definiert wurde, auch wenn er keinen Wert aufweist. Verwenden Sie die VSCTDefinitions Eigenschaft in Der Projektdatei, um einen Namen zu definieren.

Wenn ein Condition-Attribut auf eine Liste angewendet wird, wird die Bedingung auf jedes untergeordnete Element in der Liste angewendet. Wenn ein untergeordnetes Element selbst ein Condition-Attribut enthält, wird die Bedingung mit dem übergeordneten Ausdruck durch einen AND-Vorgang kombiniert.

Die Werte 1, "1" und "true" werden als "true" ausgewertet, und 0, "0" und "false" werden als "false" ausgewertet.

Operatoren

Verwenden Sie die folgenden Operatoren, um bedingte Ausdrücke auszuwerten.

Operator Definition
(,) Gruppierung
! Logisches Nicht
<, =><, =, >==, != Relation und Gleichheit
and Boolean
oder Boolean

Beispiele

Projektdatei

<PropertyGroup>
    <VSCTDefinitions>DEMO_SKU</VSCTDefinitions>
</PropertyGroup>

VSCT-Datei

<Menu Condition="Defined(DEBUG)" ...
</Menu>

<Menu Condition="%(SKU_MODE) = 'Demo'" ...
</Menu>

<Menus Condition="Defined(DEBUG)">
    <Menu ...
    </Menu>
</Menus>

<Menus Condition="Defined(DEMO_SKU)">
    <Menus Condition="!Defined(DEBUG)">
        <Menu ...
        </Menu>
    </Menus>

    <Menu ...
    </Menu>
</Menus>

<Menus Condition="(Defined(DEMO_SKU) or Defined(SAMPLE_SKU))
and !Defined(DEBUG)">
    <Menu ...
    </Menu>
</Menus>

Siehe auch