Controllo della modalità di visualizzazione mediante una formula

Completato

In Power Apps la proprietà DisplayMode di un controllo consente di modificare l'aspetto e il funzionamento di controlli e informazioni durante l'uso dell'app. Ad esempio, se nella schermata è presente un pulsante e si vuole mostrare agli utenti quando il pulsante è selezionabile. Il pulsante ha un aspetto normale quando è selezionabile, altrimenti è disabilitato e gli utenti non possono selezionarlo. È possibile ottenere funzionalità come questa configurando la proprietà DisplayMode del controllo. Per ogni controllo (ad eccezione delle schermate) sono disponibili tre proprietà DisplayMode:

  • DisplayMode.Disabled

  • DisplayMode.Edit

  • DisplayMode.View

Quando si aggiunge un controllo all'app, per impostazione predefinita la modalità di visualizzazione è DisplayMode.Edit.

Di seguito vengono illustrate le varie modalità.

DisplayMode.Edit

Usando il controllo Pulsante come esempio, quando si imposta la proprietà DisplayMode su DisplayMode.Edit, il pulsante funziona come previsto. Ciò significa che l'utente può interagire con il pulsante selezionandolo. Inoltre, sono disponibili altre proprietà per il controllo, ad esempio OnSelect, per attivare le azioni quando il pulsante viene selezionato.

DisplayMode.Disabled

Sempre usando un controllo Pulsante come esempio, quando la proprietà DisplayMode è impostata su DisplayMode.Disabled, il pulsante è disattivato e non è possibile selezionarlo. Il controllo appare inattivo a causa delle proprietà Disabled. Ogni controllo prevede proprietà Disabled leggermente diverse, che ne determinano l'aspetto in questa modalità. Queste proprietà includono:

  • DisabledBorderColor: colore del bordo di un controllo.

  • DisabledColor: colore del testo di un controllo.

  • DisabledFill: colore di sfondo di un controllo.

È possibile personalizzare tutte queste proprietà in base alle specifiche esigenze, ma i valori predefiniti rappresentano un ottimo punto di partenza.

DisplayMode.View

Continuando con l'esempio del controllo Pulsante, quando la proprietà DisplayMode è impostata su DisplayMode.View, il pulsante ha esattamente lo stesso aspetto specificato con la proprietà DisplayMode.Edit, ma non è selezionabile. Come facilmente intuibile, questo scenario rischia di creare una notevole confusione per gli utenti finali. Per sviluppare ulteriormente l'esempio precedente, se nell'app si prevede di configurare uno o più pulsanti che non è possibile selezionare in determinati momenti, è preferibile impostare la proprietà DisplayMode.Disabled anziché DisplayMode.View. Anche se le due modalità non consentono all'utente di selezionare il pulsante, la modalità Disabled offre anche un'indicazione visiva che non è selezionabile.

Prova pratica

  1. Aggiungere tre pulsanti a una schermata dell'app canvas.

  2. Assegnare ai pulsanti il nome "Modifica", "Disabilitato" e "Visualizza" rispettivamente.

  3. Selezionare il pulsante "Disabilitato", quindi aggiornare la proprietà DisplayMode come segue:

    DisplayMode.Disabled

  4. Selezionare il pulsante "Visualizza", quindi aggiornare la proprietà DisplayMode come segue:

    DisplayMode.View

  5. Impostare l'app in modalità di anteprima e passare il mouse sui diversi pulsanti per selezionarli. Notare che l'unico che cambia colore ed è cliccabile è il pulsante "Modifica". Questa immagine mostra come cambia il colore del pulsante "Modifica" quando ci si passa sopra con il mouse. Gli altri pulsanti rimangono immutati. L'immagine mostra come appare il pulsante "Modifica" quando si passa su di esso il mouse in modalità di anteprima. Si dovrebbe notare che il colore appare leggermente più scuro.

Ogni controllo funziona in modo leggermente diverso, quindi la proprietà DisplayMode per un controllo potrebbe non avere lo stesso effetto su un altro controllo. Per altre informazioni sui vari controlli, consultare Controlli e proprietà in Power Apps.

Si è così appreso che gli unici controlli con cui gli utenti possono interagire sono i controlli in cui la proprietà Visible è true e DisplayMode è DisplayMode.Edit.