title: XAML: How to bind element to Property the name of is dynamic, can have different name in different places
body: <p>I create a custom UserControl which have a ListControl. </p>
  
  <pre><code>&lt;UserControl&gt;
      &lt;UserControl.Resources&gt;
          &lt;Style TargetType="ItemsControl"&gt;
              &lt;Setter Property="ItemTemplate"&gt;
                  &lt;Setter.Value&gt;
                      &lt;DataTemplate&gt;
                          &lt;simple:TrackItem /&gt;                          
                      &lt;/DataTemplate&gt;
                  &lt;/Setter.Value&gt;
              &lt;/Setter&gt;
          &lt;/Style&gt;
      &lt;/UserControl.Resources&gt;
      &lt;ItemsControl ItemsSource="{Binding ElementName=Root, Path=ItemsSource}"/&gt;
  &lt;/UserControl&gt;
  </code></pre>
  
  <p>I also create a DependencyProperty in this custom UserControl and bind ListControl's ItemsSource to this DependencyProperty. </p>
  
  <pre><code>public partial class TracksList : UserControl
      {
          public TracksList()
          {
              InitializeComponent();
          }
  
          public static readonly DependencyProperty ItemsSourceProperty = DependencyProperty.Register(
              "ItemsSource", typeof(IEnumerable), typeof(TracksList), new FrameworkPropertyMetadata(default(IEnumerable)));
  
          public IEnumerable ItemsSource
          {
              get { return (IEnumerable) GetValue(ItemsSourceProperty); }
              set { SetValue(ItemsSourceProperty, value); }
          }
  
      }
  </code></pre>
  
  <p>I override the ItemTemplate of ItemsControl. This ItemTemplate have two TextBlock elements, so this TextBlocks needs the names of item DataType to bind theirs Text values to Properties.</p>
  
  <pre><code>  &lt;TextBlock Text="{Binding "????????"}"/&gt;
    &lt;TextBlock Text="{Binding "????????"}"/&gt;
  </code></pre>
  
  <p>Instead of "???????" I want to set the name of this Property dynamically - by custom string Property in custom UserControl.</p>
  
  <p>[this is not working code, I remove unneeded parts to make it more readable]</p>