2015-10-14 73 views
0

結合領域我有這個XAML:設置ItemsControl中的DataTemplate在運行時

<ItemsControl> 
    <ItemsControl.ItemTemplate> 
     <DataTemplate> 
      <local:Column YControl="{Binding YData}" /> 
     </DataTemplate> 
    </ItemsControl.ItemTemplate> 
</ItemsControl> 

如何在運行時的字符串設定YDATA變量名?

+0

請問,什麼是你的目的是什麼?爲什麼你需要改變你綁定的屬性名稱? –

+0

此代碼是usercontrol的一部分,我綁定的屬性名稱是外部參數 – Brainstorming

回答

1

您可以創建在C#中動態綁定:

<ItemsControl> 
    <ItemsControl.ItemTemplate> 
     <DataTemplate> 
      <local:Column Initialized="SetYControlBinding_OnColumnInitialized"/> 
     </DataTemplate> 
    </ItemsControl.ItemTemplate> 
</ItemsControl> 

後臺代碼:

void SetYControlBinding_OnColumnInitialized(object sender, EventArgs e) 
{ 
    var control = (Column)sender; 
    var binding = ... 
    control.SetBinding(Column.YControlProperty, binding); 
} 
+0

謝謝列洛:) – Brainstorming

相關問題