Как удалить обработчик события, если он установлен Style Eventsetter? - PullRequest
0 голосов
/ 04 июля 2019

У меня есть текстовое поле в моем окне wpf.Когда я использую этот код:

<TextBox TextChanged="Text_Changed" Loaded="Text_Loaded"/>

добавление и удаление обработчика событий TextChanged работает нормально:

private void Text_Loaded(object sender, RoutedEventArgs e)
{
   ((TextBox)sender).TextChanged -= Text_Changed;
   //some code
   ((TextBox)sender).TextChanged += Text_Changed;
}

Но, когда я использую статический источник событий в стиле ресурса, вот так:

<Window.Resources>
    <Style x:Key="tbxstyle" TargetType="TextBox">
        <EventSetter Event="Loaded" Handler="Text_Loaded"/>
        <EventSetter Event="TextChanged" Handler="Text_Changed"/>
    </Style>
</Window.Resources>

<TextBox Style="{StaticResource tbxstyle}"/>

в этом случае добавление и удаление обработчика событий TextChanged не работает!В чем проблема?

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