mam ten flipview:Jak uzyskać dostęp do formantu wewnątrz obiektu XAML DataTemplate?
<FlipView x:Name="models_list" SelectionChanged="selectionChanged">
<FlipView.ItemTemplate>
<DataTemplate>
<Grid x:Name="cv">
<Image x:Name="img1" Source = "{Binding ModelImage}" Stretch="Fill" Tag="{Binding ModelTag}"/>
</Grid>
</DataTemplate>
</FlipView.ItemTemplate>
Chcę znaleźć img1 aktualnie wybranego indeksu. Podczas poszukiwania nim znalazłem tę metodę na jakiś post tutaj:
private DependencyObject FindChildControl<T>(DependencyObject control, string ctrlName)
{
int childNumber = VisualTreeHelper.GetChildrenCount(control);
for (int i = 0; i < childNumber; i++)
{
DependencyObject child = VisualTreeHelper.GetChild(control, i);
FrameworkElement fe = child as FrameworkElement;
// Not a framework element or is null
if (fe == null) return null;
if (child is T && fe.Name== ctrlName)
{
// Found the control so return
return child;
}
else
{
// Not found it - search children
DependencyObject nextLevel = FindChildControl<T>(child, ctrlName);
if (nextLevel != null)
return nextLevel;
}
}
return null;
}
Zwraca mi obraz na pierwszym indeksem flipview ale muszę jeden prezent od aktualnie wybranego indeksu .. Próbowałem edytować tę metodę ale nie jestem w stanie znaleźć wymaganej kontroli. Czy ktoś może mi pomóc?
To zwykle jest złe podejście. Co konkretnie chcesz zrobić z tym obrazem? Zwróć uwagę, że FlipView wirtualizuje swoje dzieci, aby obraz mógł nie istnieć. –
@FilipSkakun Chcę uzyskać współrzędne tego obrazu. Czy mogę to zrobić w jakikolwiek inny sposób? – Tehreem
Do czego potrzebne są współrzędne ekranu? –