Partage via


Tranches de mise en forme FlagsSelection

La tranche FlagsSelection est une tranche de mise en forme simple utilisée pour représenter le type d’objet énumération du fichier capabilities.json. Il existe deux tranches FlagSelection : ItemFlagsSelection et AutoFlagsSelection.

Leur différence est que pour le segment AutoFlagsSelection, vous devez déclarer sa liste d’éléments d’énumération sous l’objet approprié dans le fichier capabilities.json, et pour ItemFlagsSelection dans la classe de paramètres de mise en forme.

Exemple : implémentation FlagsSelection

Dans cet exemple, nous montrons comment créer des segments FlagsSelection à l'aide des utilitaires du modèle de formatage. Les onglets suivants montrent des exemples des segments ItemFlagsSelection et AutoFlagsSelection.

Capture d’écran d’un ItemFlagsSelection.

Objet de fonctionnalités

Insérez le fragment JSON suivant dans le fichier capabilities.json.

{
  // ... same level as dataRoles and dataViewMappings
  "objects": {
    "labels": {
      "properties": {
        "itemFlag": {
          "type": {
            "enumeration": []
          }
        },
      }
    }
  }
}

Mise en forme de la classe de modèle

Insérez le fragment de code suivant dans le fichier de paramètres.

import powerbi from "powerbi-visuals-api";
import { formattingSettings } from "powerbi-visuals-utils-formattingmodel";

const itemFlagOptions : powerbi.IEnumMember[] = [
    {value : "1", displayName : "Top"}, 
    {value : "2", displayName : "Bottom"},
    {value : "4", displayName : "Left"}, 
    {value : "8", displayName : "Right"}
];

class LabelsCardSetting extends formattingSettings.SimpleCard {
    name: string = "labels"; // same as capabilities object name
    displayName: string = "Labels";

    public itemFlag: formattingSettings.ItemFlagsSelection = new formattingSettings.ItemFlagsSelection({
        name: "itemFlag", // same as capabilities property name
        displayName: "Item flag",
        items: itemFlagOptions,
        value: "1"
    });

    public slices: formattingSettings.Slice[] = [ this.itemFlag ];
}

export class VisualSettings extends formattingSettings.Model {
    public labels: LabelsCardSetting = new LabelsCardSetting();
    public cards: formattingSettings.SimpleCard[] = [this.labels];
}