WPF Изменение элементов управления в шаблоне данных? - PullRequest
0 голосов
/ 16 ноября 2010

так что теперь, когда я могу получить доступ к элементам управления, скрытым во вложенных шаблонах данных, кажется, что я не могу изменить их значения.Например, у меня есть код (предоставленный мне любезно членом переполнения стека)

<Grid Name="mainGrid">
    <Grid.Resources>
    <DataTemplate x:Key="frontTemplate" >
        <StackPanel x:Name="noWork">
            <Image Source="Images/1.png" Stretch="Fill" Width="72" Height="96" x:Name="FrontFace"   HorizontalAlignment="Left" VerticalAlignment="Top"></Image>
        </StackPanel>
    </DataTemplate>

    <DataTemplate x:Key="flipItemTemplate">
        <Grid Width="200" Height="200">

            <Border x:Name="frontHost" Background="Transparent">
                <ContentPresenter Name="contentPresenter"  Content="{Binding}" ContentTemplate="{StaticResource frontTemplate}" />
            </Border>
        </Grid>
    </DataTemplate>
    </Grid.Resources>
</Grid>

И хотя я могу получить изображение TO во втором шаблоне (frontFace), я не могу изменить исходный код,Я могу получить новое растровое изображение и загрузить его без ошибок, но изображение не меняется.Если я помещаю элемент управления изображением в XAML за пределы таблицы данных и загружаю его с моим растровым кодом, он работает нормально.Это заставляет меня поверить, что шаблон не может перерисовать сам себя после его применения ... НО я не могу получить доступ к его внутренним элементам, пока он не был применен ... так как, черт возьми, я динамически настраиваю элементы вшаблон до его применения?

1 Ответ

0 голосов
/ 16 ноября 2010

Шаблон дублирует его содержимое. Вы получаете доступ к элементу Image вашего шаблона, а не к экземпляру, представленному в представителе содержимого.

...