Рассказчик. Режим сканирования. Для TextBlock рассказчик дважды читает свойства Text.

У меня есть TextBlock с динамическими данными (таймер). Свойство Text обновляется раз в секунду.

Диктор иногда (не всегда) дважды читает текст в режиме сканирования, потому что у него есть два свойства с текстом: Text и AutomationProperty.Name. Пробовал записывать данные прямо в текстовый блок TextBlock.Text = Text; (не привязка) и менять разные параметры AutomatonProperties, не помогло.

XAML:

<TextBlock Text="{x:Bind Text, Mode=OneWay}"/>

C#:

private string _text;
public string Text
{
    get { return _text; }
    set
    {
        _text = value;
        OnPropertyChanged("Text");
    }
}

Как правильно настроить TextBlock, чтобы Рассказчик в режиме сканирования прочитал его один раз?


person Vladimir Bolshakov    schedule 18.08.2017    source источник


Ответы (1)


Знаете ли вы, когда рассказчик читает ваше TextBlock?

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

Знаете ли вы, когда рассказчик начинает читать ваше TextBlock?

Например, вы можете остановить обновление текста на 2 секунды. Это также может решить проблему.

TextBlock отдых каждую секунду оказывает большое влияние?

Вы можете создавать новый текстовый блок каждую секунду. Может быть, это может должным образом изменить поведение рассказчика.

person Mikolaytis    schedule 18.08.2017
comment
Спасибо за ответ, но я не могу знать, когда рассказчик находится в активном состоянии. Вы можете создавать новый текстовый блок каждую секунду. - это великое дело, но оно не работает. - person Vladimir Bolshakov; 18.08.2017