WPF C # ListView: Bindng список в списке? - PullRequest
0 голосов
/ 26 октября 2019

Я хочу связать свой список элементов, поэтому я создал класс "All_Items", в этом классе есть List и ID

List<itemdata> all = new List<t> { }
all.Add(new itemdata { ID = all.Count , items = aitem });

Я хочу поместить все свои элементы в ListView, поэтому я попыталсясвязать список, и я пишу на XAML:

 <GridViewColumn  Width="30" Header="ID"     DisplayMemberBinding="{Binding ID}"   /> 
 <GridViewColumn Width="70" Header="Gender"  DisplayMemberBinding="{Binding items.IGender}" />

, поэтому с этим списком просмотра ничего не показывалось, кроме идентификатора
, тогда я сделал 1 список для отображения и один для сохранения, и это многокод между ними и мне не нравится, потому что завтра я его потеряю =>

XAML

  <ListView x:Name="ItemsViow" HorizontalAlignment="Right" Margin="0,279,12,43" Width="893"  >
        <ListView.View  >
            <GridView >
                <GridViewColumn  Width="30" Header="ID"     DisplayMemberBinding="{Binding ID}"   />
                <GridViewColumn Width="70" Header="Gender"  DisplayMemberBinding="{Binding IGender}" />
                <GridViewColumn Width="140" Header="Tipe"   DisplayMemberBinding="{Binding ITipe}"  />
                <GridViewColumn Width="80" Header="Prise"   DisplayMemberBinding="{Binding IPrise}" />
                <GridViewColumn Width="44" Header="Amont"   DisplayMemberBinding="{Binding IAmount}" />
                <GridViewColumn Width="200" Header="Detals" DisplayMemberBinding="{Binding IDetailing}" />
            </GridView>
        </ListView.View>
    </ListView>

C #

     List<DataClass.ItemData> aitem = new List<DataClass.ItemData> { };
        List<DataClass.ItemData> itemers = new List<DataClass.ItemData> { };

 private void add_Item(object sender, RoutedEventArgs e)
        {
            var i = 0;

                aitem.Add(new DataClass.ItemData {
                    ID = aitem.Count,
                    ITipe = ITipe.Text,
                    IPrise = Convert.ToDouble(IPrice.Text),
                    IGender = Igender.SelectedIndex,
                    IAmount = Convert.ToInt32(IAmount.Text),
                    IDetailing = IDetals.Text });
                cleaner();
            }

     private void cleaner()
            {
                int i = 0;
                itemers.Clear();
                foreach (var item in aitem)
                {
                    itemers.Add(new DataClass.ItemData { ID = i, ITipe = item.ITipe, IPrise = item.IPrise,   
           IAmount = item.IAmount, IDetailing = item.IDetailing,
                        IGender = item.IGender, SaveItem = item.SaveItem });
                    i++;
                }
                ItemsViow.ItemsSource = null;
                ItemsViow.ItemsSource = itemers;}

Aitem остается только1 пункт, почему items.IGender не работает с привязкой?

...