Как использовать DisplayMemberPath для отображения элемента в определенном столбце - PullRequest
2 голосов
/ 27 января 2010

У меня есть ListView с несколькими GridViewColumns (Title, Start, Due). Итак, как я могу связать объект со строкой Title, Datetime Start и datetime Due. В процессуальном коде я уже указал:

lvwFill.ItemsSource = assignments.ListAssignments(); //Returns a List<Assignments>

Так что теперь мой XAML:

            <ListView x:Name="lvwFill">
            <ListView.View>
                <GridView>
                    <GridViewColumn x:Name="TitleColumn" Header="Title"  Width="125" />
                    <GridViewColumn x:Name="DueColumn" Header="Due"  Width="75" />
                    <!-- ... -->
                </GridView>
            </ListView.View>
        </ListView>

Так, как я могу перечислить каждое назначение и отображать ТОЛЬКО определенную информацию, такую ​​как назначение.

1 Ответ

4 голосов
/ 27 января 2010

используйте DisplayMemberBinding, как и

          <GridViewColumn
             Header="Title"
             DisplayMemberBinding="{Binding Path=Title}" />

          <GridViewColumn
             Header="Due"
             DisplayMemberBinding="{Binding Path=Due}" />

при условии, что вы привязаны к списку назначений, которые имеют свойство Title и Due.

Если вы хотите, чтобы сложные типы значений (не строки) использовали CellTemplate, он позволяет вам использовать шаблон данных, чтобы вы могли форматировать / конвертировать в ваш контент сердца

        <GridViewColumn
            Header="Due">
            <GridViewColumn.CellTemplate>
                <DataTemplate>
                    <TextBlock Text="{Binding Due, StringFormat={}{0:MM/dd/yyyy}}" />
                </DataTemplate>
            </GridViewColumn.CellTemplate>
        </GridViewColumn>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...