3

In code I have a Hashtable named MyHashtable. This Hashtable contains an element with key="Value", value=3. I'm currently trying to bind this value to a textbox. This is my XAML code:

<TextBlock Margin="4" Text="{Binding MyHashtable[Value]}" />
<TextBlock Margin="4" DataContext="{Binding MyHashtable}" Text="{Binding [Value]}" />

Q: Why does the second binding not work, while the first binding works just great?

For the second binding I have tried other bindings for the text, such as: Value, this[Value] or even Me[Value], but they all did not work.


Using Item[Value] gives me an interesting exception: Parameter count mismatch. Does somebody understand this? This is because of differences between C# and VB.NET. See this question.

4

1 回答 1

1

对于第二个选项,您可以使用这个:

<TextBlock Margin="4" 
     DataContext="{Binding MyHashtable}" 
     Text="{Binding RelativeSource={x:Static RelativeSource.Self},
            Path=DataContext[Value]}" />
于 2013-02-21T22:21:36.557 回答