0

xamlで事前定義されたリストビュー内にグリッドビューがあります:

....

<ListView x:Name="listPriority" IsSynchronizedWithCurrentItem="True" Margin="0,30,0,4" BorderThickness="0,0,0,0">
<ListView.View>
    <GridView>
        <GridViewColumn x:Name="grvPriorityColumn" Width="140" Header="Priority" />
        <GridViewColumn x:Name="grvMessage" Width="250" Header="Message" />
    </GridView>
</ListView.View>

....

「grvPriorityColumn」と「grvMessage」に入れる必要があるデータを含む配列があります。データバインディングを使用せずに、このデータをグリッドビューに追加するにはどうすればよいですか?

4

1 に答える 1

1

GridViewの列に値を直接割り当てる方法はないと思いますが、匿名オブジェクトを使用してそれらの列にバインドできます。

var priorities = new int [] { 3, 4, 5 };
var messages = new string [] { "first", "second", "third" };
var items = new List<object>();

for (int i = 0; i < priorities.Length; i++) {
  items.Add(new { Priority = priorities[i], Message = messages[i] });
}

listPriority.ItemsSource = items;

XAMLの場合:

<ListView x:Name="listPriority">
<ListView.View>
        <GridView>
                <GridViewColumn DisplayMemberBinding="Priority" Header="Priority" />
                <GridViewColumn DisplayMemberBinding="Message" Header="Message" />
        </GridView>
</ListView.View>
</ListView>
于 2009-12-10T02:26:46.763 に答える