Управляет вопросом взаимодействия - PullRequest
0 голосов
/ 06 сентября 2011

У меня есть два простых пользовательских элемента управления, полученных из стандартных элементов управления WPF. * 1001 Т.е. *

internal class CustomLabel : Label { ... }

internal class CustomButton : Button { ... }

(Хорошо, на самом деле я использую GridViewHeaderRowPresenter и DataGrid из WPF Toolkit, а не Label и Button).

В xaml они расположены на одном уровне иерархии.

<Grid>
  <CustomLabel />

  <CustomButton />
</Grid>

Элемент управления CustomButton должен каким-то образом реагировать на событие CustomLabel (скажем, событие SizeChanged). Каков наилучший способ реализовать это?

До сих пор я решил обойти логическое дерево, чтобы найти CustomButton в обработчике событий CustomLabel и изменить некоторые свойства. Есть ли лучший способ?

Обратите внимание, что я использую .Net 3.5, поэтому не могу использовать расширение разметки x: Reference.

1 Ответ

1 голос
/ 06 сентября 2011

Вы можете дать своим элементам управления имена и получить к ним доступ, используя это имя в своем коде.Если вы хотите сделать это исключительно в XAML, подумайте о привязке данных и о том, можно ли достичь этой цели с помощью этого подхода.

...