Ich habe eine Liste (siehe unten) in einem Fenster. Das Fenster DataContext
hat zwei Eigenschaften Items
und AllowItemCommand
.
Wie erhalte ich für die die Bindung Hyperlink
ist Command
Eigentum Bedürfnisse Entschlossenheit gegen das Fenster des DataContext
?
<ListView ItemsSource="{Binding Items}">
<ListView.View>
<GridView>
<GridViewColumn Header="Action">
<GridViewColumn.CellTemplate>
<DataTemplate>
<StackPanel>
<TextBlock>
<!-- this binding is not working -->
<Hyperlink Command="{Binding AllowItemCommand}"
CommandParameter="{Binding .}">
<TextBlock Text="Allow" />
</Hyperlink>
</TextBlock>
</StackPanel>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>
wpf
data-binding
datacontext
Jordanien
quelle
quelle
Antworten:
Sie könnten so etwas versuchen:
quelle
Dies wird auch funktionieren:
ListView
erben seineDataContext
vonWindow
ihm ist, damit an dieser Stelle ebenfalls verfügbar.Und da
ListView
, genau wie ähnliche Kontrollen (zBGridview
,ListBox
usw.), ist eine Unterklasse vonItemsControl
demBinding
für diese Kontrollen perfekt funktionieren.quelle
Dies funktioniert auch in Silverlight 5 (vielleicht auch früher, aber ich habe es nicht getestet). Ich habe die relative Quelle so verwendet und es hat gut funktioniert.
RelativeSource="{RelativeSource Mode=FindAncestor, AncestorType=telerik:RadGridView}"
quelle