AlternationConverter Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Преобразует целое число в объект и из нее путем применения целочисленного числа в качестве индекса к списку объектов.
public ref class AlternationConverter : System::Windows::Data::IValueConverter
[System.Windows.Markup.ContentProperty("Values")]
public class AlternationConverter : System.Windows.Data.IValueConverter
[<System.Windows.Markup.ContentProperty("Values")>]
type AlternationConverter = class
interface IValueConverter
Public Class AlternationConverter
Implements IValueConverter
- Наследование
-
AlternationConverter
- Атрибуты
- Реализации
Примеры
В следующем примере создается ListBox и используется два AlternationConverter объекта для следования Background элементов и FontStyle элементов.
<Grid>
<Grid.Resources>
<AlternationConverter x:Key="BackgroundConverter">
<SolidColorBrush>Blue</SolidColorBrush>
<SolidColorBrush>LightBlue</SolidColorBrush>
</AlternationConverter>
<AlternationConverter x:Key="FontStyleConverter">
<FontStyle >Italic</FontStyle>
<FontStyle >Normal</FontStyle>
</AlternationConverter>
<Style x:Key="alternatingWithBinding" TargetType="{x:Type ListBoxItem}">
<Setter Property="Background"
Value="{Binding RelativeSource={RelativeSource Self},
Path=(ItemsControl.AlternationIndex),
Converter={StaticResource BackgroundConverter}}"/>
<Setter Property="FontStyle"
Value="{Binding RelativeSource={RelativeSource Self},
Path=(ItemsControl.AlternationIndex),
Converter={StaticResource FontStyleConverter}}"/>
</Style>
</Grid.Resources>
<ListBox AlternationCount="2" ItemsSource="{StaticResource data}"
ItemContainerStyle="{StaticResource alternatingWithBinding}"/>
</Grid>
Комментарии
Можно использовать AlternationConverter для привязки свойства к чередующимся значениям. Например, если элементы в элементе ListBox должны иметь чередующиеся синие и светло-голубые фоны, сделайте следующее:
AlternationConverter Создайте и добавьте синий SolidColorBrush и светло-синий SolidColorBrush в его Values свойство.
В a Style , ListBoxItemпривязайте Background свойство к ItemsControl.AlternationIndex свойству и назначьте созданный преобразователь свойству Binding.Converter .
Конструкторы
| Имя | Описание |
|---|---|
| AlternationConverter() |
Инициализирует новый экземпляр класса AlternationConverter. |
Свойства
| Имя | Описание |
|---|---|
| Values |
Возвращает список объектов, AlternationConverter возвращаемых при передаче целочисленного числа методу Convert(Object, Type, Object, CultureInfo) . |
Методы
| Имя | Описание |
|---|---|
| Convert(Object, Type, Object, CultureInfo) |
Преобразует целое число в объект в списке Values . |
| ConvertBack(Object, Type, Object, CultureInfo) |
Преобразует объект в список в Values целое число. |
| Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |