在我的wp8应用中,我有一个列表框下的复选框。
以下是XAML代码:
<ListBox Name="URLListBox" Grid.Row="2" >
<ListBox.ItemTemplate>
<DataTemplate>
<Grid >
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition Width="400"/>
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="1" Tag="{Binding b1Tag}" Tap="surenameTap" x:Name="surename" FontFamily="Consolas" FontSize="25" Text="{Binding text}" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="60,0,0,0"/>
<CheckBox IsEnabled="False" BorderThickness="0" BorderBrush="DarkGreen" Background="DarkGreen" Grid.Column="0" x:Name="checkbox" IsChecked="{Binding file}" ></CheckBox>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
我想在程序运行时更新复选框。该复选框显示数据是否已下载。
我使用BackgroundTransferRequest
下载文件。我想在下载完成后检查复选框。
实际上我有一个类来确定下载了哪些文件并将其与复选框绑定,但是当我进入页面时它会更改复选框。那就是我应该转到上一个菜单并重新启动包含复选框的页面,然后它会显示选中的复选框,但是当我在页面时我想要这个。
这是绑定复选框的类:
lnk = new linkname();
URLListBox.ItemsSource = lnk.obj();
答案 0 :(得分:1)
确保已设置DataContext和Implemented InotifyPropertyChanged接口,仅当您实现接口时,属性才会更新。
此外,你必须在绑定时添加Mode =“TwoWay”,类似这样的
IsChecked="{Binding file, Mode="TwoWay"}"
快速示例为here