Проверьте значение в ячейке таблицы данных, если значение равно X, измените цвет строки - PullRequest
0 голосов
/ 09 октября 2019

У меня есть таблица данных, заполненная данными, экспортированными непосредственно из SQL. В этой сетке у меня есть ячейка "Завершено" с логическим значением True / False.

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

Я уже написал код для доступа кконкретный столбец, с которым я работаю;

    self.rowColor()

def rowColor(self):
    try:
        for i in range(0, self.maindataGrid.Items.Count - 1):
            if self.maindataGrid.ItemsSource[i][13] == True:
                print(1)
    except IndexError:
        print('Index error at %i' % i)

Возвращает отпечаток 1 для всех данных, которые я анализирую. Как бы я обновил цвет строки в XAML, используя IronPython?

1 Ответ

0 голосов
/ 09 октября 2019

Я нашел решение этой проблемы.

Я обновил свой XAML, чтобы указать привязки к определенным столбцам, возвращаемым через SQL, а затем соответственно установил цвет.

<DataGrid x:Name="maindataGrid" HorizontalAlignment="Left" Height="Auto" Margin="10,10,0,0" VerticalAlignment="Top" Width="Auto">
                <DataGrid.RowStyle>
                    <Style TargetType="DataGridRow">
                        <Style.Triggers>
                            <DataTrigger Binding="{Binding WHATSTAGE}" Value="C">
                                <Setter Property="Background" Value="Green"></Setter>
                            </DataTrigger>
                            <DataTrigger Binding="{Binding WHATSTAGE}" Value="B">
                                <Setter Property="Background" Value="LightGreen"></Setter>
                            </DataTrigger>
                        </Style.Triggers>
                    </Style>
                </DataGrid.RowStyle>
            </DataGrid>
...