2017-01-25 7 views
0

Я использую WPF, и у меня есть DataTemplate, который я хочу получить в коде, как я могу это использовать?Я использую WPF, и у меня есть DataTemplate, который я хочу получить в коде, как я могу это использовать?

<DataTemplate x:Name="PersonDateTemplate"> 
    <StackPanel Orientation="Horizontal"> 
     <Label x:Name="lblhr" Height="40px" Width="50px" 
       Content="{Binding Path=hrvalueinitially}" FontSize="20px" 
       HorizontalAlignment="Left" Background="#555555" Foreground="White" 
       FlowDirection="LeftToRight"></Label> 
     <TextBlock x:Name="items" Text="{Binding}" Margin="35,0,0,0"></TextBlock> 
    </StackPanel> 
</DataTemplate> 
+1

Почему вы хотите это сделать? – Clemens

+0

@logeshwari предоставляет правильный заголовок вопроса .. konjam theliva irukalaam :) .. – WPFUser

ответ

0

Если у вас возникли DataTemplate в ресурс и у вас есть ключ определен, вы можете получить доступ к ресурсу в CodeBehind следующим образом,

DataTemplate dataTemplate = App.Current.TryFindResource("PersonDateTemplate") as DataTemplate; 

или если вы хотите создать с нуля в CodeBehind, вы должны use FrameworkElementFactory

1

Вы можете использовать dataTemplate для замены визуального внешнего вида элемента данных в элементе управления, таком как ListBox, ComboBox или ListView. Чтобы понять, как работать с DataTemplate я сделал следующий пример:

<ListView.ItemTemplate> 
      <DataTemplate> 
       <StackPanel Orientation="Horizontal"> 
        <TextBlock Text="{Binding ID}" FontSize="24"/> 
        <TextBlock Text=". Name: " FontSize="24"/> 
        <TextBlock Text="{Binding Name}" FontSize="24"/> 
        <TextBlock Text=" ,Age: " FontSize="24"/> 
        <TextBlock Text="{Binding Age}" FontSize="24"/> 
       </StackPanel> 
      </DataTemplate> 
     </ListView.ItemTemplate> 
    </ListView> 

Для лучшего понимания о шаблоне данных вы можете следовать по следующей ссылке: https://msdn.microsoft.com/en-us/library/ms742521(v=vs.110).aspx

+0

Это очевидно, а не то, что было задано в вопросе. – Clemens

Смежные вопросы