私の検索コントラクトは基本的に SQLite データベースを見て、関連するレコードを返します。これらのレコードは、検索チャーム ページで適切な情報を表示および選択できるように操作されます。ただし、結果に対応する画像を結果とともに表示します (デフォルトの検索コントラクト結果テンプレートに従います)。
画像はCustomObjectRecord
データベースに文字列として保存されます。レコードが選択されると、 に変換され、CustomObject
に保存されているイメージ文字列CustomObjectRecord
が という Bitmap オブジェクトに変換されますsearchImage
。これを結果とともに表示したいのですが、検索チャームが戻ると、出力コンソールにエラーが表示されます
Error: BindingExpression path error: 'searchImage' property not found on 'My_App.Classes.CustomObject, My App, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'. BindingExpression: Path='searchImage' DataItem='My_App.Classes.CustomObject, My App, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'; target element is 'Windows.UI.Xaml.Controls.Image' (Name='thumbImage'); target property is 'Source' (type 'ImageSource')
テンプレート定義
<DataTemplate x:Key="LocalStandardSmallIcon300x70ItemTemplate">
<Grid Width="294" Margin="6">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Border Background="{StaticResource ListViewItemPlaceholderBackgroundThemeBrush}" Margin="0,0,0,10" Width="40" Height="40">
<Image Name="thumbImage" Source="{Binding searchImage}" Stretch="UniformToFill"/>
</Border>
<StackPanel Grid.Column="1" Margin="10,-10,0,0">
<TextBlock Text="{Binding Name}" Style="{StaticResource BodyTextStyle}" TextWrapping="NoWrap"/>
</StackPanel>
</Grid>
</DataTemplate>
searchImage
CustomObject で次のように定義されています。
public Bitmap searchImage;
searchImage
CustomObjectのプロパティは、レコードがデータベースから読み込まれるときに設定されます。同じテンプレートの名前バインディングは正常に機能します。
どんな指針も素晴らしいでしょう。さらにコードが必要な場合はお知らせください。