C # WPF GridView Columns Отображение пустых элементов

NeoEyes спросил: 31 июля 2018 в 09:43 в: c#

Я пытаюсь создать программу WPF, которая будет проходить через список элементов и помещать каждый из перечисленных элементов в представление списка.

Однако, когда я добавляю элементы в список просмотра столбцов просто покажите пустое (но выделите, когда я наведите указатель мыши на представление списка, чтобы добавить элементы)

Мне просто интересно, почему значения не отображаются в столбцах. Также, если это помогает, я знаю, что "SetData" имеет значения в нем, потому что я сделал шаг за шагом и наблюдал добавление значений.

XAML

<ScrollViewer Grid.Column="1" Grid.Row="1" Grid.ColumnSpan="4">
        <ListView x:Name="LIV_SetList">
            <ListView.View>
                <GridView>
                    <!--Each column will display a specific property of the set, its name, code and total number of cards-->
                    <GridViewColumn Header="Set Name" DisplayMemberBinding="{Binding SetName}"/>
                    <GridViewColumn Header="Set Code" DisplayMemberBinding="{Binding SetCode}"/>
                    <GridViewColumn Header="Number Of Cards" DisplayMemberBinding="{Binding SetCount}"/>
                </GridView>
            </ListView.View>        </ListView>
    </ScrollViewer>

.cs

 // Shove all the data just gathered into a Set Overview, and put that set overview into a list item which is then added to the listview 
                    Classes.SetOverview SetData = new Classes.SetOverview { SetName = SetReader["name"].ToString(), SetCode = TempCode, SetCount = SetSize };
                    LIV_SetList.Items.Add(SetData);

Класс SetOverview

public class SetOverview
    {
        //This Is Used On The Main Window To Display Information Regarding A Given Sets Name Code And Number Of Cards
        public string SetName;
        public string SetCode;
        public int SetCount; 
    }

2 ответа

NeoEyes ответил: 31 июля 2018 в 09:40
Спасибо за то, что это сработало, хотя что же {получить; set;} на самом деле делать в отличие от обычной строки? Я видел это раньше в нескольких школьных заданиях, через которые прошел класс, но никогда не получал объяснения того, что он меняет по сравнению с наличием переменной и;
Есть решение
Jeff R. ответил: 31 июля 2018 в 06:54

Трудно сказать наверняка, не зная, как вы определяете класс SetOverview, но если это просто класс с 3 строковыми членами (SetName, SetCode, SetCount), убедитесь, что они определены как открытые свойства (с помощью get и set), а не только обычные строки. например:

public class SetOverview
{
    public string SetName { get; set; }
    public string SetCode { get; set; }
    public string SetCount { get; set; }
}
Jeff R. ответил: 07 августа 2018 в 11:41
Get и set делают его свойством, а не полем / членом класса. XAML обычно имеет дело со свойствами. Если вы хотите получить больше объяснений, ознакомьтесь с docs.microsoft.com/en-us/dotnet/csharp/programming-guide/…