私は最初の Windows 8 アプリに取り組んでいます。画像と画像の説明が入力された GridView を表示しようとしています。作成した XML ファイルからデータを取得したいと考えています。GridView の ItemSource プロパティを見つけ、XML ファイルをそれにバインドしようとしましたが、これを行うことができません。
このタスクを行う正しい方法を教えてください。ありがとう
私は最初の Windows 8 アプリに取り組んでいます。画像と画像の説明が入力された GridView を表示しようとしています。作成した XML ファイルからデータを取得したいと考えています。GridView の ItemSource プロパティを見つけ、XML ファイルをそれにバインドしようとしましたが、これを行うことができません。
このタスクを行う正しい方法を教えてください。ありがとう
XML ファイルを に直接バインドすることはできませんGridView.ItemsSource。最初にオブジェクトに解析する必要があります。に表示されるすべてのデータを含むクラスを作成しますGridView。
public class GridViewItem
{
public string Description { get; set; }
public ImageSource Image { get; set; }
}
次のステップは、XML ファイルを解析して のリストにすることですGridViewItem。
var xmlString = await FileIO.ReadTextAsync(storageFile);
var xml = XDocument.Parse(xmlString);
var Items = xml.Element("rootNode").Elements("itemNode").Select(i => new GridViewItem
{
Description = (string)i.Element("descriptionNode"),
Image = ParseImage(i.Element("imageNode"))
}).ToList();
XML のタグはrootNode、itemNode、descriptionNodeおよびであると仮定しましたimageNode。また、画像データが XML にどのように保存されているかもわかりません。に変換するロジックImageSourceはParseImage().
Items残っている唯一のことは、上記のリストをビューモデルのプロパティに割り当てて、次のようDataContextにバインドすることItemsSourceです。
<GridView ItemsSource="{Binding Items}" />
これが基本的な考え方です。私の回答には多くの詳細が欠けていますが、それがあなたの質問に基づいてできる最善のことです。