簡體   English   中英

如何在VB代碼后面初始化WPF datagrid ItemsSource?

[英]How do I initialize a WPF datagrid ItemsSource in VB code behind?

我正在嘗試使用通過自動生成的列使用WPF DataGrid元素時學習其他選項。

XAML是:

<Window x:Class="DataGrid.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="DataGrid with Autogenerated Columns" Height="350" Width="525">
<DataGrid Name="dataGrid"/>

我有以下示例在C#中初始化DataGrid ItemsSource:

        public MainWindow()
    {
        InitializeComponent();

        dataGrid.ItemsSource = new Record[]
        {
            new Record { FirstName="first1", LastName="last1"},
            new Record { FirstName="first2", LastName="last2" }
        };
    }

    Class Record is defined in another file

我想在VB中看到它,但是我很難准確地理解上面的C#代碼在做什么。 是否正在進行某種類型的轉換? 我嘗試初始化DataGrid ItemsSource的嘗試無效,因為我不知道如何將DataGrid ItemsSource初始化為IEnumberable。 如何使用VB初始化DataGrid ItemsSource?

DataGrid.ItemsSource使用/接受集合來顯示數據。
似乎您嘗試使用集合初始化器

正如您自己已經注意到的(從注釋中看到的),可以使用數組初始化器

datagrid.ItemsSource = 
{
    New Record With { .FirstName="first1", .LastName="last1" },
    New Record With { .FirstName="first2", .LastName="last2" }
}

或者您可以使用From關鍵字創建列表

datagrid.ItemsSource = New List(Of Record) From
{
    New Record With { .FirstName="first1", .LastName="last1" },
    New Record With { .FirstName="first2", .LastName="last2" }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM