【发布时间】:2014-07-04 07:10:00
【问题描述】:
我认为有以下事件处理程序:
private void ComboBoxEdit_SelectedIndexChanged(object sender, System.Windows.RoutedEventArgs e)
{
var sb = ((ComboBoxEdit)sender).SelectedText;
model.SearchBy = sb;
SearchItem.Label = sb;
}
组合项在 XAML 中硬编码:
<dxe:ComboBoxEdit SelectedIndex="0" SelectedIndexChanged="ComboBoxEdit_SelectedIndexChanged" Height="22">
<dxe:ComboBoxEditItem Content="Emp. No." />
<dxe:ComboBoxEditItem Content="Id No." />
<dxe:ComboBoxEditItem Content="Surname" />
</dxe:ComboBoxEdit>
然而,当我选择“Id.No”时。并且事件触发,SelectedText 返回“Emp.No.”,并且始终返回列表中的前一项。但是我没有直接使用索引(除了在标记中将 selected 设置为 0),所以虽然这看起来像 1 vs 0 错误,但它不应该是。当然“Changed”事件应该获取我在 UI 中选择的值,而“Changed”事件可以获取之前的值?
【问题讨论】:
-
我肯定希望
SelectedText属性与当前选定的项目相同。您是否尝试过SelectedItem属性? -
@GeorgeHowarth 很有趣,但 SelectedItem 提供了正确的内容。添加答案,我会接受,谢谢。
-
我不认为它需要一个完整的答案:) 这只是一个解决方法的建议应该实际工作。要么我误解了
SelectedIndexChanged的作用,要么是他们 API 中的错误。 -
我会和他们一起记录。基于良好的 aspx 体验,花了很多时间说服人们购买。
标签: c# wpf devexpress