Guest User

Untitled

a guest
Oct 28th, 2016
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.52 KB | None | 0 0
  1. <ListBox x:Name="listboxFolder" BorderThickness="0" ItemsSource="{Binding Path=ClientsOnlineList, UpdateSourceTrigger=PropertyChanged}" Margin="0,50,0,10" HorizontalAlignment="Left" Width="301" Background="#FFD0E6C5" >
  2. <ListBox.ItemContainerStyle>
  3. <Style TargetType="{x:Type ListBoxItem}">
  4. <EventSetter Event="PreviewMouseLeftButtonDown" Handler="SelectClient"></EventSetter>
  5. <Setter Property="Margin" Value="5"/>
  6. <Setter Property="Padding" Value="5"/>
  7. <Setter Property="Cursor" Value="Hand"/>
  8. <Style.Triggers>
  9. <Trigger Property="IsSelected" Value="True">
  10. <Setter Property="Foreground" Value="Green"/>Bold"/>
  11. <Setter Property="FontSize" Value="23"/>
  12. </Trigger>
  13. </Style.Triggers>
  14. </Style>
  15. </ListBox.ItemContainerStyle>
  16. <ListBox.ItemTemplate >
  17. <DataTemplate >
  18. <TextBlock Text="{Binding UserName}" />
  19. </DataTemplate>
  20. </ListBox.ItemTemplate>
  21. </ListBox>
  22.  
  23. /// <summary>
  24. /// Это коллекция для заполнения ListBox
  25. /// </summary>
  26. private ObservableCollection<Animal> _Animals;
  27. public ObservableCollection<Animal> Animals
  28. {
  29. get { return _Animals; }
  30. set
  31. {
  32. if (_Animals == value) return;
  33. _Animals = value;
  34. PropertyChanged(this, new PropertyChangedEventArgs(nameof(Animals)));
  35. }
  36. }
  37.  
  38. /// <summary>
  39. /// Текущее выбранное животное в ListBox
  40. /// </summary>
  41. private Animal _CurrentAnimal;
  42. public Animal CurrentAnimal
  43. {
  44. get { return _CurrentAnimal; }
  45. set
  46. {
  47. if (_CurrentAnimal == value) return;
  48. _CurrentAnimal = value;
  49. PropertyChanged(this, new PropertyChangedEventArgs(nameof(CurrentAnimal)));
  50. }
  51. }
  52.  
  53. <ListBox ItemsSource="{Binding Animals, Mode=TwoWay}"
  54. SelectedItem="{Binding CurrentAnimal}"/>
  55.  
  56. private void SelectClient(object sender, MouseEventArgs e)
  57. {
  58. var index = listboxFolder.Items.IndexOf(((ListBoxItem)sender).DataContext);
  59. MessageBox.Show(index.ToString());
  60. }
  61.  
  62. listboxFolder.SelectionChanged += (sender, e) => {
  63. var id = (listboxFolder.SelectedItem as [Ваш класс клиента]).id;
  64. MessageBox.Show(id.ToString());
  65. };
Add Comment
Please, Sign In to add comment