次のことを行う必要があります
1 データ構造のセットアップ: コード ビハインドまたは XAML で行うことができます。データは、test1/test2/test3 データ メンバーを持つ型のコレクションを持つコレクション型である必要があります。
var data = new ObservableCollection<Test>();
data.Add(new Test {test1="abc", test2="abc2", test3="abc3"});
data.Add(new Test {test1="bc", test2="bc2", test3="bc3"});
data.Add(new Test {test1="c", test2="c2", test3="c3"});
Data = data
public ObservableCollection<Test> Data {get;set;}
プロパティを介してデータを公開する
2 ListView の DataContext にコレクション (手順 1 でセットアップ) を割り当てる必要があります。(XAML で推奨されますが、分離コードで実行できます)
<ListView x:Name="myListView" DataContext={Binding Data} Margin="10,71,10,45" SelectionChanged="Selector_OnSelectionChanged" >
Data
3 View Model クラス ( を含む) をビューに関連付ける必要もあります
<Application
x:Class="BuildAssistantUI.App"
xmlns:local="clr-namespace:MainViewModel"
StartupUri="MainWindow.xaml"
>
<Application.Resources>
<local:MainViewModel x:Key="MainViewModel" />
</Application.Resources>
<Window DataContext="{StaticResource MainViewModel}" >
上記の手順を完了すると、 にデータが表示されますListView
。
匿名型のオブジェクトからプロパティにアクセスする方法については、リフレクションを介して行われます。
以下は例です
object item = new {test1="test1a", test2="test2a", test3="test3a"};
var propertyInfo = item.GetType().GetProperty("test1"); // propertyInfo for test1
var test1Value = propertyInfo.GetValue(item, null);