0

我有一本字典:

Dictionary<string, string> d = new Dictionary<string, string>();

我把它们放在一个AutoCompleteBox

autobox.ItemsSource = d;

仅显示密钥。

<toolkit:AutoCompleteBox x:Name="autobox" ValueMemberPath="Key" >
     <toolkit:AutoCompleteBox.ItemTemplate>
          <DataTemplate>
               <TextBlock Text="{Binding Key}" Tap="Item_Tap" />
           </DataTemplate>
     </toolkit:AutoCompleteBox.ItemTemplate>
</toolkit:AutoCompleteBox>

现在我正在尝试使用 item tap ,当我按下结果时,其对应的对将显示在MessageBox.

private void Item_Tap(object sender, System.Windows.Input.GestureEventArgs e)
{
     var s = sender as TextBlock;
     Messagebox.Show(d[s.Text]);            
}

但是当我点击一个结果时,什么都不会出现。我哪里做错了?

谢谢你的帮助

4

1 回答 1

0

尝试制作自己的元素模型并绑定到此元素的列表。在此模型中创建方法 OnTap 或类似的方法,并使用 EventToCommand 将 Tap 绑定到此方法。

于 2013-08-05T07:39:35.417 回答