我有一個領域的窗口是這樣的:如何在WPF中設置綁定?
public partial class VariablesWindow : Window
{
public Dictionary<string, string> Variables { get; private set; }
然後在窗口的XAML,我創建了一個ListView。如何設置ItemsSource綁定到Variables
?
<ListView ItemsSource="???"
我有一個領域的窗口是這樣的:如何在WPF中設置綁定?
public partial class VariablesWindow : Window
{
public Dictionary<string, string> Variables { get; private set; }
然後在窗口的XAML,我創建了一個ListView。如何設置ItemsSource綁定到Variables
?
<ListView ItemsSource="???"
我想ChrisF公佈會工作......
<ListView ItemsSource="{Binding Variables}" />
但是你可能需要顯式設置的DataContext。
this.DataContext = this;
<ListView ItemsSource="{Binding Path=Variables}" />
但是,您可能會發現更多有用的直接綁定到鍵或值,你會做這樣的:
<ListView ItemsSource="{Binding Path=Variables.Values}" />
更新:這些綁定將工作,只要你DataContext
是null
或等於this
。否則,你就需要使用一些比較煩瑣,像
<ListView ItemsSource="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType=x:Type Window}}, Path=Variables}
對於綁定的幫助,看看this superb cheat sheet。
這工作,但它是一個有點可笑冗長:
ItemsSource="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType=my:VariablesWindow, AncestorLevel=1}
似乎並不喜歡做的最好的方式。
直接鏈接:http://www.nbdtech.com/Free/WpfBinding.pdf(!它是隱藏的,你鏈接到頁面上) – mpen 2011-01-11 22:42:22
@Ralph:我知道。我不想熱鏈接PDF。 :) – Jon 2011-01-11 22:47:01