Да, и как ответ @ user1419778, вы должны найти объект ScrollViewer из ListView, затем вы можете использовать ScrollViewer.ChangeView Метод zoomFactor
метода для сброса его ZoomFactor .
Во-первых, вы можете найти объект ScrollViewer из ListView, используя следующий метод в классе помощника.
public static class UIHelper
{
public static ChildElement FindVisualChild<ChildElement>(this DependencyObject obj)
where ChildElement : DependencyObject
{
for (int i = 0; i < VisualTreeHelper.GetChildrenCount(obj); i++)
{
DependencyObject child = VisualTreeHelper.GetChild(obj, i);
if (child != null && child is ChildElement)
return (ChildElement)child;
else
{
ChildElement childOfChild = FindVisualChild<ChildElement>(child);
if (childOfChild != null)
return childOfChild;
}
}
return null;
}
}
Затем вы можете получить объект ScrollViewer и сбросить его ZoomFactor в коде вашего UserControl.
private void ResetButton_Click(object sender, RoutedEventArgs e)
{
var scrollViewer=PdfListView.FindVisualChild<ScrollViewer>();
//change view to vertical offset and set the zoom factor to 1.
//The default zoom factor is 1.0, where 1.0 indicates no additional scaling
scrollViewer.ChangeView(0, scrollViewer.VerticalOffset, 1.0f);
}