powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / WPF DataGrid + Style.Triggers
6 сообщений из 6, страница 1 из 1
WPF DataGrid + Style.Triggers
    #36330425
Фотография Яzz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа,

нуно, что б строки в гриде подсвечивались красным там, где выставлен флаг true у свойства
Код: plaintext
public IsError {get; set;} 
прибинденой коллекции ObservableCollection.

Как это сделать?

Пытаюсь триггером, как то так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
 <Window.Resources>
        <Style x:Key="FontStyle"/>
        <Style TargetType="toolkit:DataGrid">
            <Style.Triggers>
                <DataTrigger Binding="{Binding Path=IsError}" Value="true">
                    <Setter Property="Foreground" Value="Red" />
                </DataTrigger>
            </Style.Triggers>
        </Style>
    </Window.Resources>

не шуршит.... Что тут не так?
...
Рейтинг: 0 / 0
WPF DataGrid + Style.Triggers
    #36330526
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В IsError должен быть реализован INotifyPropertyChanged
...
Рейтинг: 0 / 0
WPF DataGrid + Style.Triggers
    #36454609
Frolls
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Та же история.. Реализован INotifyPropertyChanged, но все-равно не хочет работать :-(

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
<Window.Resources>
	<Style TargetType="{x:Type Custom:DataGrid}">
		<Setter Property="Control.FontSize" Value="24" />
		<Setter Property="Control.Foreground" Value="Blue" />
		<Setter Property="Control.HorizontalAlignment" Value="Center" />
		
		<!-- Триггеры -->
		<Style.Triggers>
			<Trigger Property="Control.IsMouseOver" Value="True">
				<Setter Property="Control.FontStyle" Value="Italic" />
			</Trigger>
			<DataTrigger Binding="{Binding Path=IsError}" Value="True">
				<Setter Property="Foreground" Value="Red" />
			</DataTrigger>
		</Style.Triggers>
	</Style>
	<Storyboard x:Key="OnLoaded1"/>
</Window.Resources>

У кого-нибудь получилось?
С уважением, =[Frolls]=
...
Рейтинг: 0 / 0
WPF DataGrid + Style.Triggers
    #36454613
Frolls
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Заработало!!

<Style TargetType="toolkit:DataGrid"> надо заменить на <Style TargetType="toolkit:DataGridRow">

С уважением, =[Frolls]=
...
Рейтинг: 0 / 0
WPF DataGrid + Style.Triggers
    #36454686
Frolls
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Еще можно добавить анимации:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
<Window.Resources>
	<Style TargetType="{x:Type Custom:DataGridRow}">
		
	
		<Setter Property="Control.FontSize" Value="24" />
		<Setter Property="Control.Foreground" Value="Blue" />
		<Setter Property="Control.HorizontalAlignment" Value="Center" />
		
		<!-- Триггеры -->
		<Style.Triggers>
			<Trigger Property="Control.IsMouseOver" Value="True">
				<Setter Property="Control.FontStyle" Value="Italic" />
			</Trigger>
			<DataTrigger Binding="{Binding Path=IsError}" Value="True">
			<Setter Property="Control.Background" Value="Red" />
				<DataTrigger.EnterActions>
            <BeginStoryboard>
              <Storyboard>
                <DoubleAnimation
                 Storyboard.TargetProperty="Opacity"
                 From="0.5" To="1" Duration="0:0:0.2" 
                 RepeatBehavior="Forever"
                 AutoReverse="True"/>
              </Storyboard>
            </BeginStoryboard>
          </DataTrigger.EnterActions>
          <DataTrigger.ExitActions>
            <BeginStoryboard> 
              <Storyboard FillBehavior="Stop">
                <DoubleAnimation
                  Storyboard.TargetProperty="Opacity"
                  To="1" Duration="0:0:0.2" />
              </Storyboard>
            </BeginStoryboard>  
          </DataTrigger.ExitActions>
			</DataTrigger>
		</Style.Triggers>
	</Style>
</Window.Resources>


С уважением, =[Frolls]=
...
Рейтинг: 0 / 0
WPF DataGrid + Style.Triggers
    #36463332
Frolls
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мдя.. А анимация-то не хило "кушает".. Да и вообще, пришел к выводу, что DataGrid довольно-таки жадный до ресурсов контрол. При скроллинге и то притормаживает. Вот она -- хваленая виртуализация. Хотя, может просто контрол еще сырой

С уважением, =[Frolls]=
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / WPF DataGrid + Style.Triggers
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]