Я загрузил несколько ярлыков в ListView, используя Grid
. Я хочу изменить положение меток при повороте экрана.
Итак, я сделал что-то подобное.
protected override void OrientationChanged(OrientationValu newOrientation)
{
RdMyListView.ItemTemplate = null;
if (newOrientation == OrientationValu.Landscape)
{
Debug.WriteLine("LAndscape");
viewModel.IsLandscape = true;
RdMyListView.ItemTemplate = new OrientationDataTemplateSelector
{
LandscapeTemplate = landscapeTemplate,
PortraitTemplate = portraitTemplate,
IsLandscape = true
};
}
else
{
Debug.WriteLine("Portrait");
viewModel.IsLandscape = false;
RdMyListView.ItemTemplate = new OrientationDataTemplateSelector
{
LandscapeTemplate = landscapeTemplate,
PortraitTemplate = portraitTemplate,
IsLandscape = false
};
}
}
Вот как я вызываю класс datatemplator и получаю DataTmplate
. Когда мои Page
загружаются, я присваиваю свои 2 личных шаблона данных вот так.
landscapeTemplate = GetDataTemplate(true);
portraitTemplate = GetDataTemplate(false);
На основании этого истинного или ложного my GetDataTemplate(bool isLandscape)
будет возвращать различные шаблоны данных.
private DataTemplate GetDataTemplate (bool isLandscape)
{
var dataTemplate = new DataTemplate(() =>
{
// Implementation
});
return dataTemplate;
}
Но приложение UWP вылетает при максимизации окна симулятора. Андроид работает нормально. Пожалуйста, помогите мне.
Спасибо