【发布时间】:2014-08-28 11:46:47
【问题描述】:
我的应用有两个 ListBox。我需要,当用户持有我的ListBox1 中的项目时,相同的项目应该出现在ListBox2 中。
我当前的代码有效,但我需要在保留项目之前选择项目(触摸项目)。我知道原因是我正在使用SelectedItem,但是对于举行事件怎么办?
我的代码:
private void holdListAdd(object sender, System.Windows.Input.GestureEventArgs e)
{
if (List1.SelectedItem != null)
{
Fields fi = (Fields)this.List1.SelectedItem;
// fi.Quantity = txtQuantity.Text;
if (List2.Items.Contains(List1.SelectedItem))
{
MessageBox.Show("Esse item já foi adicionado!");
}
else
{
List2.Items.Add(fi);
MessageBox.Show("Item Adicionado com sucesso!");
}
}
}
我的 XAML:
<ListBox Name="List1" ItemsSource="{Binding Items}" Hold="holdListAdd">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Margin="0,0,0,17" Width="432" Height="78">
<TextBlock Grid.Column="0" Text="{Binding FNome}" TextWrapping="Wrap" Style="{StaticResource PhoneTextExtraLargeStyle}"/>
<TextBlock Grid.Column="1" Text="{Binding FEstado}" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
<ListBox Name="List2">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Margin="0,0,0,17" Width="432" Height="78">
<TextBlock Grid.Column="0" Text="{Binding FNome}" TextWrapping="Wrap" Style="{StaticResource PhoneTextExtraLargeStyle}"/>
<TextBlock Grid.Column="1" Text="{Binding FEstado}" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
【问题讨论】:
标签: c# listbox windows-phone