API OnApplyTemplate не вызывается, когда пользовательский элемент управления перемещается в библиотеку классов - PullRequest
0 голосов
/ 05 июня 2019

Я создал образец пользовательского элемента управления с помощью проекта пользовательского элемента управления WPF. Добавлены стили в файл Generic.xaml, и все, кажется, работает нормально, когда это было в проекте. В реальной реализации мне пришлось перенести эту реализацию в библиотеку классов, в которой есть пользовательские элементы управления, использующие этот пользовательский элемент управления. Когда я переместил управление, я сделал все необходимые пункты. Я создал папку «Темы», добавил файл generic.xaml, убедился, что в пользовательском элементе управления есть статический конструктор, и добавил, что Themeinfo добавлен в assemblyinfo.cs. Однако стили не вызываются, и API OnApplyTemplate не вызывается вообще. Я попытался сохранить это в отдельной сборке, добавить это как ссылку, и все же это не сработало. У меня нет выбора, и я застрял. Может кто-нибудь помочь мне с этим вопросом, пожалуйста. Пожалуйста, предложите что-нибудь, что я мог попробовать.

Я создал папку Темы, добавил файл generic.xaml, убедился, что в пользовательском элементе управления есть статический конструктор, и добавил, что Themeinfo добавлен в assemblyinfo.cs.

[TemplatePart(Name="PART_TwoThumbContainer", Type=typeof(StackPanel))]
[TemplatePart(Name = "PART_BlackThumb", Type = typeof(Thumb))]
public class CustThumb : Control
{
  static CustThumb()
  {
     DefaultStyleKeyProperty.OverrideMetadata(typeof(CustThumb), new FrameworkPropertyMetadata(typeof(CustThumb)));
  }
  public override void OnApplyTemplate()
  {
  }
}
...