今天,我正在WPF UserControl上顯示一些變量的當前值。我想知道是否有辦法在WPF中創建一個超級簡單的屬性網格。問題出在下面的XAML的星號上。 如何將一個字符串綁定到ItemTemplate屬性,就像我在下面設置的那樣?爲了更清楚我可以在另一個{Binding Path={Binding Value}}
中嵌入綁定。WPF動態綁定
這裏是類:
public class Food
{
public string Apple { get; set; }
public string Orange { get; set; }
public IEnumerable<KeyValuePair<string, string>> Fields
{
get
{
yield return new KeyValuePair<string, string>("Apple Label", "Apple");
yield return new KeyValuePair<string, string>("Orange Label", "Orange");
}
}
}
這裏是XAML:
<UserControl x:Class="MAAD.Plugins.FRACTIL.Simulation.SimulationStateView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Height="331" Width="553">
<ListView ItemSource="{Binding Fields}">
<ListView.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Key}" />
**<TextBlock Text="{Binding Path={Binding Value}}" />**
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</UserControl>
感謝您的帖子,但我不想綁定到價值,但對價值持有的名稱屬性。從上面的例子中,其中一個對綁定到Orange屬性的值,另一個綁定到Apple屬性。 – 2009-11-02 18:47:03
Ahhhhhhhhhhhh,我明白你在說什麼。是的,那是不可能的。讓我考慮一下並修改我的答案。 – 2009-11-02 18:54:32