Добавление строк в Gridview без использования databind - PullRequest
0 голосов
/ 06 октября 2009

У меня есть вид сетки внутри списка, предопределенный в 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». Как добавить эти данные в сетку без привязки данных?

1 Ответ

1 голос
/ 10 декабря 2009

Я не думаю, что есть способ напрямую присваивать значения столбцам 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>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...