You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用ComboBox.Items.Add()添加自定义ComboBoxItem时会触发事件吗?

手动添加ComboBoxItem后,ComboBox的事件触发情况解析

咱们把这两个事件分开拆解来看,触发条件完全不一样:

  • SelectionChanged事件:这个事件的触发逻辑很明确——只有当ComboBox的选中项发生改变时才会触发。你现在只是把新创建的ComboBoxItem添加到cbxSelectClan的Items集合里,并没有改动当前选中的项,所以这时候完全不会触发SelectionChanged。只有后续你主动通过代码设置选中这个新项(比如cbxSelectClan.SelectedItem = cbi;),或者用户手动在下拉列表里选中它,这个事件才会被触发。

  • TargetUpdated事件:这个事件是和数据绑定强相关的,而且得你在绑定的时候显式指定NotifyOnTargetUpdated=True才会生效。如果你只是手动创建ComboBoxItem并添加到Items集合,没有涉及到绑定数据源的更新(比如没修改ItemsSource绑定的集合,也没改动选中项绑定的目标值),那这个事件根本不会触发。只有当绑定的目标属性因为数据源的变化而更新时,它才会被唤起。

额外提一句:如果你一直是直接操作Items集合而不是用ItemsSource做数据绑定,那这类绑定相关的事件(比如TargetUpdated)基本不会因为添加项的操作被触发,因为没有绑定数据源的变化驱动。

内容的提问来源于stack exchange,提问作者Fishezzz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:02:40