从ListView中提取信息

时间:2013-11-28 12:08:20

标签: c# wpf

我有一个列表视图,其中包含来自链接到我的PC的设备(CanCase XL)的数据,我填写列表视图的方式是:

_Lvf.Add(new listViewFrames()
{
    dlc = DLC,
    Byte1 = Byte1,
    Byte2 = Byte2,
    Byte3 = Byte3,
    Byte4 = Byte4,
    Byte5 = Byte5,
    Byte6 = Byte6,
    Byte7 = Byte7,
    Byte8 = Byte8,
});

在此操作之后,我想将以mylistview填写的所有这些数据提取到“表”,这样我就可以逐个开始分析数据, 我试过

((DataRowView)(myListView.SelectedItem)).Row.ItemArray[0]

但它只返回第一行。 我想一次性提取全部,有办法吗?

1 个答案:

答案 0 :(得分:0)

正如我在评论中所提到的,首先将数据添加到数据表然后将其绑定到列表视图更容易。

快速而肮脏的样本:

C#:

    private DataTable dataTable;

    private void BackgroundWorker_DoWork(object sender, DoWorkEventArgs e)
    {
        this.dataTable = new DataTable();

        // Add your data here
        this.dataTable.Columns.Add("Col1");
        this.dataTable.Rows.Add("1");
        this.dataTable.Rows.Add("2");
        this.dataTable.Rows.Add("3");
        this.dataTable.Rows.Add("4");
        this.dataTable.Rows.Add("5");
    }

    void BackgroundWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
    {
        this.ListView1.DataContext = this.dataTable.DefaultView;
    }

XAML:

    <ListView Name="ListView1" ItemsSource="{Binding}" >
        <ListView.View>
            <GridView>
                <GridViewColumn DisplayMemberBinding="{Binding Col1}" Header="Col1" />
            </GridView>
        </ListView.View>
    </ListView>