我有这个XAML
(...)
<ListBox Height="Auto" Margin="0,0,-20,0" x:Name="post_Images_Grid_list" VerticalAlignment="Top" HorizontalContentAlignment="Stretch" ScrollViewer.VerticalScrollBarVisibility="Disabled" ScrollViewer.HorizontalScrollBarVisibility="Disabled">
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<toolkit:WrapPanel />
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemTemplate>
<DataTemplate>
<Grid Width="Auto" Height="Auto" Background="#FF#247722" Margin="0,0,10,20">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="19*"/>
</Grid.ColumnDefinitions>
<StackPanel HorizontalAlignment="Left" VerticalAlignment="Top" Orientation="Horizontal" Margin="0">
<Image Source="{Binding image, Mode=OneWay}" Width="110" Height="110" Margin="5" Stretch="UniformToFill" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</StackPanel>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
(...)
MyPage.xaml.cs中的这个C#代码:
(...)
post_Images_Grid_list.ItemsSource = thePost.images;
(...)
thePost.images的定义:
public List<BitmapImages> images = new List<BitmapImages>();
BitmapImages类:
public class BitmapImages
{
public BitmapImage image { get; set; }
public BitmapImages(string image_url)
{
this.image = new BitmapImage(new Uri(image_url, UriKind.RelativeOrAbsolute));
}
}
但是在xaml页面显示完成后,调试跳转到 App.xaml.cs 中的方法 Application_UnhandledException ,有什么问题?
以下是运行时列表图像的数据:
一切看起来都对我好!每个URL都存在且有图像,我在网络浏览器中检查过。
感谢您的帮助,我不知道发生了什么!
谢谢你,Rohit Vats,这是e.Exception:
它似乎与xaml图像元素的大小有关吗?
答案 0 :(得分:0)
好的,我觉得很蠢:
<Grid Width="Auto" Height="Auto" Background="#FF#247722" (...) />
这里的Copypaste错误:
<Grid Width="Auto" Height="Auto" Background="#FF247722" (...) />
感谢您的帮助。
答案 1 :(得分:0)
这通常意味着您的XAML存在一个问题,该问题无法在设计时验证,但会在运行时显现。鉴于您的情况,我猜测您添加的行可能会导致其中一个Datagrid列模板以这种方式出错。
这通常是由于对样式或事件处理程序的引用不存在或不在XAML的上下文中。根据我的经验,这是Custom Control开发中常见的事情。
您应该从控件中删除样式,并将进行确认处理。