DataTrigger не устанавливает прозрачность - PullRequest
0 голосов
/ 20 ноября 2018

У меня есть сетка данных с триггером данных.

            <Style TargetType="{x:Type DataGridRow}" BasedOn="{StaticResource {x:Type DataGridRow}}">
                <Setter Property="ContextMenu" Value="{StaticResource RowMenu}" />
                <Setter Property="IsSelected" Value="{Binding IsSelected}" />
                <Setter Property="Opacity" Value="1"/>
                <Style.Triggers>
                    <DataTrigger x:Uid="DataTrigger_1" x:Name="RowMenuDataTrigger" Binding="{Binding IsModified, diag:PresentationTraceSources.TraceLevel=High}" Value="True">
                        <Setter x:Uid="Setter_1" Property="Opacity" Value="0.5" />
                        <Setter x:Uid="Setter_2" Property="ToolTip">
                            <Setter.Value>
                                <MultiBinding x:Uid="MultiBinding_1" Converter="{StaticResource ModifiedTypeMessage}">
                                    <Binding x:Uid="Binding_1" Path="Class"></Binding>
                                    <Binding x:Uid="Binding_2" Path="OriginalClassName" ></Binding>
                                </MultiBinding>
                            </Setter.Value>
                        </Setter>
                    </DataTrigger>
                </Style.Triggers>
            </Style>

        </control:DataGrid.RowStyle>

и IMultiValueConverter выглядит так:

public class EnTypeModifiedMessageConverter : IMultiValueConverter
{
    public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
    {
        if (values.Length == 2)
        {
            string current = values[0].ToString();
            string original = values[1].ToString();

            if (current != original)
            {
                return string.Format(LanguageHelper.LocalizedString("RawTypeModified"), original.ToUpper());
            }
        }
        return string.Empty;
    }

    public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture)
    {
        return null;
    }
}

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...