[英]DataGridListView's SelectedItem null in MVVM after binding WPF C#
我在數據網格列表視圖的選定項的數據綁定方面遇到了一些麻煩。 我使用命令和命令參數在雙擊上實現了一個事件。 我想將我雙擊的行(所選項目)作為命令參數傳遞。
我試過這個:
<ui:DataGridListView Grid.Row="1" Margin="6" MinHeight="200"
Name="PTest"
ItemsSource="{Binding Source={StaticResource model}, Path=EsecuzioniCollection}"
VisibleItems="{Binding Source={StaticResource model}, Path=VisibleItems, Mode=OneWayToSource}">
<i:Interaction.Triggers>
<i:EventTrigger EventName="MouseDoubleClick">
<i:InvokeCommandAction CommandParameter="{Binding Source={StaticResource model}, Path= SelectedItem}" Command="{Binding Source={StaticResource model}, Path=MouseDoubleClickCommand}">
</i:InvokeCommandAction>
</i:EventTrigger>
</i:Interaction.Triggers>
...............
</ui:DataGridListView>
但是當調用命令時,參數 SelectedItem 是 null:
public async void MouseDoubleClick(PerimetriTestDataItem item)
{
...
}
我也嘗試將 SelectedItem={Binding SelectedItem} 放在 ui:DataGridListView 上,但它在我的視圖模型上是 null。
有沒有辦法綁定行? 任何技巧?
謝謝
在沒有任何其他信息的情況下,我假設 SelectedItem 是model
中的一個屬性,它看起來不像 StaticResource model 中的 SelectedItem 綁定到任何東西。 我相信您可以嘗試以下兩個步驟之一。
用i:InvokeCommandAction CommandParameter="{Binding Source={StaticResource model}, Path= SelectedItem}" Command="{Binding Source={StaticResource model}, Path=MouseDoubleClickCommand}">
i:InvokeCommandAction CommandParameter="{Binding Source={ElementName=PTest, Path=SelectedItem}, Path= SelectedItem}" Command="{Binding Source={StaticResource model}, Path=MouseDoubleClickCommand}">
而不是 SelectedItem={Binding SelectedItem} on ui:DataGridListView 試試SelectedItem={Binding Source={StaticResource model}, Path=SelectedItem}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.