ListBox 绑定之-SelectedItem

注意<i:Interaction>需要使用Blend的System.Windows.Interactivity.dll文件。

通过<i:Interaction.Triggers> 关联到SelectionChanged事件,当前台获取到SelectedItem时,就会调用ViewModel的ExecuteGetItem方法,获取选择项。

XAML:

<ListBox ItemsSource="{Binding StandardSet,Mode=TwoWay}" SelectionMode="Single" Name="lb_items"
  Margin="0,0,0,125"
  >
  <i:Interaction.Triggers>
    <i:EventTrigger EventName="SelectionChanged">
    <i:InvokeCommandAction Command="{Binding GetItemCommand}"
      CommandParameter="{Binding ElementName=lb_items}"></i:InvokeCommandAction>
    </i:EventTrigger>
  </i:Interaction.Triggers>
  <ListBox.ItemsPanel>
    <ItemsPanelTemplate>
      <WrapPanel ItemHeight="30" ItemWidth="100"></WrapPanel>
    </ItemsPanelTemplate>
  </ListBox.ItemsPanel>
  <ListBox.ItemTemplate>
    <DataTemplate>
      <ListBoxItem Content="{Binding Path=Standard.Name}"
        IsSelected="{Binding Path=IsSelected,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
        >
      </ListBoxItem>
    </DataTemplate>
  </ListBox.ItemTemplate>
</ListBox>

ViewModel:

public DelegateCommand<ListBox> GetItemCommand { get; set; }

public void ExecuteGetItem(ListBox lb)
{
  StandardViewModel model = lb.SelectedItem as StandardViewModel;
}

 

转载于:https://www.cnblogs.com/gnsds/p/3664746.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值