Текущая версия элемента управления Microsoft Live Labs PivotViewer для SilverLight 4 не имеет возможности стилизовать элементы элемента управления.Глядя на элемент управления в Reflector, я вижу, что большая часть информации о стиле задается в ResourceDictionary в сборке (assets / defaultcolors.xaml).Я хотел бы создать собственную копию этого файла, а затем заменить ее во время выполнения на элементе управления PivotViewer.
Путем создания подкласса элемента управления PivotViewer и переопределения OnApplyTemplate я могу получить дочерние элементы и задать такие свойства, какФон.У меня не было никакого успеха Очистить () и MergedDictionaries и добавить мои собственные:
public override void OnApplyTemplate() {
base.OnApplyTemplate();
/* can change things this way */
CollectionViewerView cvv = ((CollectionViewerView)((Grid)this.GetTemplateChild("PART_Container")).Children[0]);
((Grid)cvv.Content).Background = new SolidColorBrush(Colors.Black);
/* can't change things this way */
CustomDictionary gd = new CustomDictionary();
cvv.Resources.MergedDictionaries.Clear();
cvv.Resources.MergedDictionaries.Add(gd);
}