Exporter (0) Imprimer
Développer tout
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

GroupStyle.HeaderStringFormat, propriété

Obtient ou définit une chaîne composite qui spécifie la manière de mettre en forme l'en-tête si celui-ci est affiché en tant que chaîne.

Espace de noms :  System.Windows.Controls
Assembly :  PresentationFramework (dans PresentationFramework.dll)
XMLNS pour XAML : http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

public string HeaderStringFormat { get; set; }
<object HeaderStringFormat="string" .../>

Valeur de propriété

Type : System.String
Chaîne composite qui spécifie la manière de mettre en forme l'en-tête si celui-ci est affiché en tant que chaîne.

HeaderStringFormat peut être un format de chaîne prédéfini, composite ou personnalisé. Pour plus d'informations sur les formats de chaîne, consultez Mise en forme des types. Si vous définissez la propriété HeaderTemplate ou HeaderTemplateSelector de GroupStyle, la propriété HeaderStringFormat est ignorée.

L'exemple suivant crée ListBox qui regroupe une collection d'éléments par gamme de prix. Le convertisseur, GroupByPrice, retourne une valeur entière qui est supérieure au prix de chaque élément. Par exemple, si le prix d'un élément est entre 0 et 100, le convertisseur retourne 100. L'exemple utilise HeaderStringFormat pour créer une chaîne qui inclut la limite supérieure de chaque gamme de prix. Par exemple, aux États-Unis, les éléments de moins de 100 dollars sont regroupés sous le titre « Éléments de moins de 100 $ ».


<StackPanel>
  <StackPanel.Resources>

      <src:ItemsForSale x:Key="MyData"/>
      <src:GroupByPrice x:Key="GroupByPrice"/>

      <CollectionViewSource x:Key="PriceGroup" Source="{StaticResource MyData}">

        <CollectionViewSource.GroupDescriptions>
          <PropertyGroupDescription PropertyName="Price"
                                    Converter="{StaticResource GroupByPrice}"/>
      </CollectionViewSource.GroupDescriptions>
    </CollectionViewSource>
  </StackPanel.Resources>

  <ListBox ItemsSource="{Binding Source={StaticResource PriceGroup}}"
           DisplayMemberPath="Description">
    <ListBox.GroupStyle>
      <GroupStyle HeaderStringFormat="Items under {0:c}"/>
    </ListBox.GroupStyle>
  </ListBox>
</StackPanel>


L'exemple suivant affiche la classe GroupByPrice, la classe PurchaseItem et la collection à laquelle ListBox est lié.


// The converter to group the items.
public class GroupByPrice : IValueConverter
{
    public object Convert(object value,
                          Type targetType,
                          object parameter,
                          System.Globalization.CultureInfo culture)
    {

        if (!(value is double))
        {
            return null;
        }

        double itemPrice = (double)value;

        if (itemPrice < 100)
        {
            return 100;
        }

        if (itemPrice < 250)
        {
            return 250;
        }

        if (itemPrice < 500)
        {
            return 500;
        }

        return 1000;



    }

    public object ConvertBack(object value,
                              Type targetType,
                              object parameter,
                              System.Globalization.CultureInfo culture)
    {
        throw new NotImplementedException();
    }
}

// The type of objects that are added to the ItemsControl.
public class PurchaseItem 
{
    public string Description { get; set; }
    public double Price { get; set; }
    public DateTime OfferExpires { get; set; }

    public PurchaseItem()
    {
    }

    public PurchaseItem(string desc, double price, DateTime endDate)
    {
        Description = desc;
        Price = price;
        OfferExpires = endDate;
    }

    public override string ToString()
    {
        return String.Format("{0}, {1:c}, {2:D}", Description, Price, OfferExpires);
    }
}

// The source of the ItemsControl.
public class ItemsForSale : ObservableCollection<PurchaseItem>
{

    public ItemsForSale()
    {
        Add((new PurchaseItem("Snowboard and bindings", 120, new DateTime(2009, 1, 1))));
        Add((new PurchaseItem("Inside C#, second edition", 10, new DateTime(2009, 2, 2))));
        Add((new PurchaseItem("Laptop - only 1 year old", 499.99, new DateTime(2009, 2, 28))));
        Add((new PurchaseItem("Set of 6 chairs", 120, new DateTime(2009, 2, 28))));
        Add((new PurchaseItem("My DVD Collection", 15, new DateTime(2009, 1, 1))));
        Add((new PurchaseItem("TV Drama Series", 39.985, new DateTime(2009, 1, 1))));
        Add((new PurchaseItem("Squash racket", 60, new DateTime(2009, 2, 28))));

    }

}


.NET Framework

Pris en charge dans : 4.5.2, 4.5.1, 4.5, 4, 3.5 SP1, 3.0 SP2

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Ajouts de la communauté

AJOUTER
Afficher:
© 2014 Microsoft