Tengo la siguiente plantilla ControlTemplate que contiene una cuadrícula:
<ContentPage.Resources>
<ResourceDictionary>
<ControlTemplate x:Key="SlideViewControlTemplate">
<Grid x:Key="GridSlideViewIndicators" Padding="0,0,0,0">
<ContentPresenter />
</Grid>
</ControlTemplate>
</ResourceDictionary>
</ContentPage.Resources>
¿Cómo puedo referirme a la cuadrícula (GridSlideViewIndicators) en mi código? Intenté lo siguiente:
var gridSlideViewIdicators = Resources.Single(r => r.Key.Contains("GridSlideViewIndicators"));
Pero esto solo devuelve un par clave / valor, no el objeto Grid real.
También intenté darle un nombre a la Cuadrícula en el XAML, pero no estaba visible para el código subyacente.
Respuestas
0 para la respuesta № 1no puede acceder a la cuadrícula directamente dentro de la Plantilla de Control que necesita para crear contenido primero, esto debería funcionar.
ControlTemplate x = (ControlTemplate) Resources["SlideViewControlTemplate"];
var gridSlideViewIdicators = x.CreateContent();