UWP访问数据绑定ListView

时间:2016-05-02 12:13:05

标签: win-universal-app

如果重要的话,我有一个ListView和ListView.ItemTemplate:ListView是Grid的一部分。我会在这里删除最小值:

<ListView x:Name="lstFotos" Grid.Row="2" Grid.Column="1" Height="auto"  Tapped="imageControl_Tapped" >
    <ListView.ItemTemplate>
        <DataTemplate>
            <Grid IsTapEnabled="True" >
                <Grid.RowDefinitions>
                    <RowDefinition Height="50" />
                    <RowDefinition Height="50"/>
                </Grid.RowDefinitions>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition />
                    <ColumnDefinition />
                    <ColumnDefinition />
                    <ColumnDefinition />
                </Grid.ColumnDefinitions>
                <Image x:Name="imageControl" Width="200" Height="200" Source="{Binding DateiSoftwareBitmapSource}" IsTapEnabled="True" Grid.Column="0" Grid.Row="0" Grid.RowSpan="2"  />
                <TextBlock x:Name="txtImageDateDescription" Text="Aufnahmedatum: " Grid.Column="1" Grid.Row="0" />
                <TextBlock x:Name="txtImageDescriptionDescription" Text="Beschreibung: " Grid.Column="1" Grid.Row="1" />
                <TextBlock x:Name="txtImageDate" Text="{Binding Datum}" Grid.Column="2" Grid.Row="0" />
                <TextBox x:Name="txtImageDescription" Text="{Binding Beschreibung}" Grid.Column="2" Grid.Row="1" />
                <Button x:Name="btnSpeichern" Content="Speichern" Grid.Column="3" Grid.Row="1" Click="btnSpeichern_Click" />
            </Grid>
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>

在代码behing中我做了

lstFotos.ItemsSource = AlleAnzeigeFotos

AlleAnzeigeFotos是一个List(Of myClass),myClass包含属性 Datum,Beschreibung,DateiSoftwareBitmapSource

我想要做的是用户可以编辑文本字段,按下按钮,在代码中,我想要更新课程并做更多的事情。

单击按钮后如何获取该类的相应实例?

更新: 这是它的样子: enter image description here

“Beschreibung”(英语:description)在添加照片后显示,并且可以通过单击“Speichern”(保存)进行编辑和存储。

1 个答案:

答案 0 :(得分:3)

(sender as Button).DataContext会为您提供所点击的项目。将其投射到您班级的适当类型

更新

Text="{Binding Beschreibung,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" 

var userenteredstring=((sender as Button).DataContext as your class).Beschreibung