我有一个列表视图,其中包含来自链接到我的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]
但它只返回第一行。 我想一次性提取全部,有办法吗?
答案 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>