Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <Window x:Class="ListViewIssue.MainWindow"
- xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- Title="MainWindow" Height="350" Width="525">
- <Grid>
- <Grid.RowDefinitions>
- <RowDefinition></RowDefinition>
- <RowDefinition Height="50"></RowDefinition>
- </Grid.RowDefinitions>
- <ListView x:Name="lstNumbers" SelectionMode="Single" ScrollViewer.HorizontalScrollBarVisibility="Disabled" SelectionChanged="lstNumbers_SelectionChanged">
- <ListView.ItemTemplate>
- <DataTemplate>
- <Grid Width="170" Background="Transparent">
- <TextBlock HorizontalAlignment="Left" Text="{Binding val, Mode=TwoWay}" TextWrapping="Wrap" Margin="3"/>
- </Grid>
- </DataTemplate>
- </ListView.ItemTemplate>
- </ListView>
- <Button Name="btnAddItem" Grid.Row="1" Click="btnAddItem_Click">Add Item</Button>
- </Grid>
- </Window>
- public partial class MainWindow : Window
- {
- public class valueClass
- {
- public int val { get; set; }
- }
- private List<valueClass> list;
- private int counter;
- public MainWindow()
- {
- InitializeComponent();
- CreateList();
- DisplayList();
- }
- private void CreateList()
- {
- list = new List<valueClass>();
- counter = 8;
- for (int i = 0; i < counter; i++)
- {
- list.Add(new valueClass() { val = i + 1 });
- }
- }
- private void lstNumbers_SelectionChanged(object sender, SelectionChangedEventArgs e)
- {
- if (lstNumbers.SelectedIndex != -1)
- {
- list.Remove(lstNumbers.SelectedValue as valueClass);
- DisplayList();
- }
- }
- private void DisplayList()
- {
- this.lstNumbers.ItemsSource = null;
- this.lstNumbers.ItemsSource = list;
- }
- private void btnAddItem_Click(object sender, RoutedEventArgs e)
- {
- list.Add(new valueClass() { val = counter++ + 1 });
- DisplayList();
- }
- }
- private void lstNumbers_SelectionChanged(object sender, SelectionChangedEventArgs e)
- {
- if (lstNumbers.SelectedIndex != -1)
- {
- lstNumbers.SelectionChanged-=lstNumbers_SelectionChanged;
- list.Remove(lstNumbers.SelectedValue as valueClass);
- DisplayList();
- lstNumbers.SelectionChanged+=lstNumbers_SelectionChanged;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement