[c#] Связывание Datagrid в WPF



0 Answers

Не видя указанный список объектов, я считаю, что вы должны быть ItemsSource свойству ItemsSource DataGrid, а не к DataContext .

<DataGrid x:Name="Imported" VerticalAlignment="Top" ItemsSource="{Binding Source=list}"  AutoGenerateColumns="False" CanUserResizeColumns="True">
    <DataGrid.Columns>                
        <DataGridTextColumn Header="ID" Binding="{Binding ID}"/>
        <DataGridTextColumn Header="Date" Binding="{Binding Date}"/>
   </DataGrid.Columns>
</DataGrid>

(Это предполагает, что элемент [UserControl и т. Д.], Который содержит DataGrid, привязан к DataContext к объекту, который содержит коллекцию list . DataGrid получен из ItemsControl , который полагается на свой Свойство ItemsSource чтобы определить коллекцию, которая связывает ее строки Следовательно, если list не является свойством объекта, связанного с DataContext вашего элемента управления, вам может потребоваться установить DataContext={Binding list} ItemsSource={Binding list} DataContext={Binding list} и ItemsSource={Binding list} в DataGrid ...)

Question

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

<DataGrid x:Name="Imported" VerticalAlignment="Top" DataContext="{Binding Source=list}"  AutoGenerateColumns="False" CanUserResizeColumns="True">
    <DataGrid.Columns>                
        <DataGridTextColumn Header="ID" Binding="{Binding Path=ID}"/>
        <DataGridTextColumn Header="Date" Binding="{Binding Path=Date}"/>
    </DataGrid.Columns>
</DataGrid>

Я пытаюсь показать это в модальном диалоговом окне и заполнять список лицензий в конструкторе модального диалогового окна. Но все еще ничего не заселено внутри datagrid.

Код конструктора:

public diagboxclass()
{
    List<object> list = new List<object>();
    list = GetObjectList();
}

public class object
{
    string id;
    DateTime date;
    public string ID
    {
        get { return id; }
        set { id = value; }
    }
    public DateTime Date
    {
        get { return date; }
        set { date = value; }
    }
}

Вы, ребята, думаете, что-то связано с списком объектов?




Related