从循环输出数据到 xaml 可滚动 table
Output data from loop to xaml scrollable table
我有一个这样的循环:
foreach (KeyValuePair<string, int> kvp in Dictionary)
{
listFirstColumn.Add(kvp.Key);
listSecondColumn.Add(kvp.Value);
}
我的问题是如何在 WPF UI 框架中显示数据,以便 listFirstColumn 进入第一列而 listSecondColumn 进入第二列。
所有这些都是可滚动的。
我使用什么 xaml 工具,列表,网格?还有你如何输出这些数据?
我似乎找不到直接的资源或答案
转到 listFirstColumn
和 listSecondColumn
所在的视图模型
using System.Linq;
using System.Collections.Generic;
...
public class Columns
{
public string Col1 { get; set; }
public int Col2 { get; set; }
}
public IEnumerable<Columns> GridItems => listFirstColumn.Zip(listSecondColumn, (first, second) =>
new Columns() { Col1 = first, Col2 = second })
如果您不想声明新的 class,请查看此 post:Populating DataGrid in WPF with anonymous type collection
我假设您使用了 GridView
文档中的代码示例:
<ListView ItemsSource="{Binding GridItems}">
<ListView.View>
<GridView>
<GridViewColumn DisplayMemberBinding="{Binding Path=Col1}" Header="Whatever" Width="100"/>
<GridViewColumn DisplayMemberBinding="{Binding Path=Col2}" Header="Whatever" Width="100"/>
</GridView>
</ListView.View>
</ListView>
我有一个这样的循环:
foreach (KeyValuePair<string, int> kvp in Dictionary)
{
listFirstColumn.Add(kvp.Key);
listSecondColumn.Add(kvp.Value);
}
我的问题是如何在 WPF UI 框架中显示数据,以便 listFirstColumn 进入第一列而 listSecondColumn 进入第二列。
所有这些都是可滚动的。
我使用什么 xaml 工具,列表,网格?还有你如何输出这些数据? 我似乎找不到直接的资源或答案
转到 listFirstColumn
和 listSecondColumn
所在的视图模型
using System.Linq;
using System.Collections.Generic;
...
public class Columns
{
public string Col1 { get; set; }
public int Col2 { get; set; }
}
public IEnumerable<Columns> GridItems => listFirstColumn.Zip(listSecondColumn, (first, second) =>
new Columns() { Col1 = first, Col2 = second })
如果您不想声明新的 class,请查看此 post:Populating DataGrid in WPF with anonymous type collection
我假设您使用了 GridView
文档中的代码示例:
<ListView ItemsSource="{Binding GridItems}">
<ListView.View>
<GridView>
<GridViewColumn DisplayMemberBinding="{Binding Path=Col1}" Header="Whatever" Width="100"/>
<GridViewColumn DisplayMemberBinding="{Binding Path=Col2}" Header="Whatever" Width="100"/>
</GridView>
</ListView.View>
</ListView>