Модераторы: gambit, Kefir, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> "Активный" элемент в ListBox 
:(
    Опции темы
RastaDja
Дата 25.8.2011, 16:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 337
Регистрация: 1.11.2010

Репутация: нет
Всего: 5



   Доброго времени суток уважаемые!
   Такая задача:
      Есть у меня список (ListBox) который биндится к определенному классу. У этого класса есть свойство IsActivity (что значит, что этот класс активный).
   Как мне закрасить активный элемент списка в красный (например) цвет используя стили?
   Спасибо.


--------------------
The more closely you look at one thing, the less closely can you see something else.
PM MAIL   Вверх
hexzo
Дата 25.8.2011, 16:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 178
Регистрация: 30.1.2011

Репутация: нет
Всего: нет



Что то типа такого, если я правильно понял вопрос. В качестве isActivity выступает двоечка.
Код

<ListView Height="209" HorizontalAlignment="Left" Margin="62,44,0,0" Name="listView1" VerticalAlignment="Top" Width="102">
            <ListView.ItemContainerStyle>
                <Style TargetType="ListBoxItem">
                    <Style.Triggers>
                        <DataTrigger Binding="{Binding Text}" Value="2">
                            <Setter Property="Background" Value="Red"></Setter>
                        </DataTrigger>
                    </Style.Triggers>
                </Style>
            </ListView.ItemContainerStyle>                      

            <TextBlock>1</TextBlock>
            <TextBlock>2</TextBlock>
            <TextBlock>3</TextBlock>
</ListView>


Это сообщение отредактировал(а) hexzo - 25.8.2011, 16:59
PM MAIL   Вверх
RastaDja
Дата 26.8.2011, 08:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 337
Регистрация: 1.11.2010

Репутация: нет
Всего: 5



hexzo, спасибо, но как это перенести в стили?
То-есть, как мне изменить этот код, чтоб учитывать еще и биндинг?
Код

<Style x:Key="SimpleListBoxItem" TargetType="ListBoxItem">            
            <Setter Property="Foreground" Value="#000"/>
            <Setter Property="FocusVisualStyle" Value="{x:Null}" />
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="ListBoxItem">
                        <Border
                           Name="Border"
                           Padding="2"
                           SnapsToDevicePixels="true">
                           <ContentPresenter />
                        </Border>
                        <ControlTemplate.Triggers>
                            <Trigger Property="IsSelected" Value="False">
                                <Setter Property="Foreground" Value="#888"></Setter>
                            </Trigger>
                            <Trigger Property="IsSelected" Value="true">
                                <Setter Property="Foreground" Value="#000"/>
                                <Setter TargetName="Border" Property="Background">
                                    <Setter.Value>
                                        <LinearGradientBrush StartPoint="1,0" EndPoint="0,0">
                                            <GradientBrush.GradientStops>
                                                <GradientStopCollection>
                                                    <GradientStop Color="#FFC4BDBD" Offset="0.0"/>
                                                    <GradientStop Color="#FFF2EFEF" Offset="0.3"/>
                                                    <GradientStop Color="#FFC4BDBD" Offset="1.0"/>
                                                </GradientStopCollection>
                                            </GradientBrush.GradientStops>
                                        </LinearGradientBrush>
                                    </Setter.Value>
                                </Setter>
                            </Trigger>
                            <MultiTrigger>
                                <MultiTrigger.Conditions>
                                    <Condition Property="IsSelected" Value="False"/>
                                    <Condition Property="IsMouseOver" Value="True"/>
                                </MultiTrigger.Conditions>
                                <Setter Property="Foreground" Value="#555"></Setter>
                                <Setter TargetName="Border" Property="Background">
                                    <Setter.Value>
                                        <LinearGradientBrush StartPoint="1,0" EndPoint="0,0">
                                            <GradientBrush.GradientStops>
                                                <GradientStopCollection>
                                                    <GradientStop Color="#FFE8E2E2" Offset="0.0" />
                                                    <GradientStop Color="White" Offset="0.2" />
                                                    <GradientStop Color="#FFE8E2E2" Offset="1.0" />
                                                </GradientStopCollection>
                                            </GradientBrush.GradientStops>
                                        </LinearGradientBrush>
                                    </Setter.Value>
                                </Setter>
                            </MultiTrigger>
                        </ControlTemplate.Triggers>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>

пробовал использовать ваш код в своем стиле, но ничего не вышло у меня.


--------------------
The more closely you look at one thing, the less closely can you see something else.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | WPF и Silverlight | Следующая тема »


 




[ Время генерации скрипта: 0.0409 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.