Patrick Skelton Ответов: 1

Как прикрепить событие WPF с помощью синтаксиса dependencyproperty?


Я могу прикрепить событие к кнопке WPF вот так:

<Button Click="Button_Click"/>


Так почему же я не могу этого сделать:

<Button>
    <Button.Click="Button_Click"/>
</Button>


???

Как раз тогда, когда я думал, что начинаю понимать WPF. :(

Что я уже пробовал:

Попробовал поискать в интернете, но я получаю кучу учебников по написанию собственного кода DependencyProperty.

1 Ответов

Рейтинг:
12

Richard Deeming

Потому что синтаксис элемента свойства[^] применяется только к свойствам, а не к событиям. Он в первую очередь предназначен для случаев, когда вы не можете представить значение свойства в виде строки, поэтому вы не можете использовать синтаксис атрибута[^].

Обработчики событий могут быть указаны только в качестве имени метода обработчика, поэтому нет необходимости в эквиваленте синтаксиса элемента для них. Даже если бы это было так, предложенный вами синтаксис не является допустимым XML.

NB: Вы мочь свяжите пуговицу Свойство command[^] используя синтаксис элемента свойства, хотя обычно это не требуется.


Patrick Skelton

Спасибо за очень подробное объяснение.