Я создал файл cxml и коллекцию изображений с помощью инструмента Pivot Excel. Затем я создал форму с элементом управления PivotViewer и указал ее на файл своей коллекции. Страница открывается, показывает все мои фильтры только с пустой поверхностью, без плиток. Я пробовал в нескольких браузерах безрезультатно. Ниже XAML, который я использую. Из других постов здесь я также настраиваю height
/ width
/ maxheight
/ maxwidth
, и ничего из этого не помогает. Любая помощь приветствуется!
<UserControl x:Class="Pivot.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:pv="clr-namespace:System.Windows.Controls.Pivot;assembly=System.Windows.Controls.Pivot"
mc:Ignorable="d" d:DesignHeight="300" d:DesignWidth="400">
<Grid x:Name="LayoutRoot" Background="White">
<pv:PivotViewer Name="pvViewer" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" />
</Grid>
Вот код позади
public partial class MainPage : UserControl
{
public MainPage()
{
InitializeComponent();
pvViewer.Loaded += new RoutedEventHandler(pvViewer_Loaded);
}
readonly string CXML_PATH = @"C:\Users\joshh\Documents\R&D\Pivot\PDP.cxml";
private CxmlCollectionSource _cxml;
void pvViewer_Loaded(object sender, RoutedEventArgs e)
{
_cxml = new CxmlCollectionSource(new Uri(CXML_PATH, UriKind.Absolute));
_cxml.StateChanged += new EventHandler<CxmlCollectionStateChangedEventArgs>(_cxml_StateChanged);
}
void _cxml_StateChanged(object sender, CxmlCollectionStateChangedEventArgs e)
{
if (e.NewState == CxmlCollectionState.Loaded)
{
pvViewer.PivotProperties = _cxml.ItemProperties.ToList();
pvViewer.ItemTemplates = _cxml.ItemTemplates;
pvViewer.ItemsSource = _cxml.Items;
}
}
}