Я бы хотел, чтобы Expander не расширялся и не рушился, когда пользователи щелкают внутри области заголовка. Это в основном тот же вопрос, что и Q 1396153, но я был бы признателен за более благоприятный ответ :)Как проглотить поведение выпадающего списка внутри Expander.Header?
Есть ли неинвазивный способ сделать это? Я не уверен точно, как прикрепить поведение к содержимому Expander.Header, чтобы предотвратить mouseclicks. Я готов плавать по содержимому вне самого расширителя через фиксированный макет сетки, но я не увлекаюсь решением. Идеи?
XAMLPad образец XAML:
<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" >
<Expander>
<Expander.Header><TextBlock>
When I click this text,
I don't want to trigger expansion/collapse! Only when I click the
expander button do I want to trigger an expand/collapse!
</TextBlock></Expander.Header>
<Grid Background="Red" Height="100" Width="100" >
</Grid>
</Expander>
</Page>
Спасибо! Я еще не пробовал, но я оптимистичен, это решит проблему. –
Обратите внимание: это решение не подчиняется строгим подходам MVVM. –
Отсутствие кода (что, я думаю, вы имеете в виду со строгим подходом MVVM), может быть достигнуто путем перемещения код для подавления события «мыши вниз» для присоединенного поведения или подкласса класса Expander. –