私は自分でWPFを学習しています。 ロゴとタイトルを使用してゲームのリストを作成しようとしています。 私はいくつかのWPFチュートリアルで見たことに成功しました。私のテンプレートは空白行のみを表示します。私のマウスがアイテムの上にあるのに何も表示されていないとき、すべての要素が正しい高さであることがわかります。C#WPF ListViewテンプレートで何も描画されていません
myListView.ItemsSourceがmy databaseに設定されています。私はこの時点でモデルを正しく受け取っていますが、私が言ったように、何もレンダリングされていません
誰かが私のコードに間違っていることを教えてもらえますか?
ここに私のWPF:
<ListView x:Name="ListGames" Margin="0,57,0,30" Background="#111" BorderThickness="0" ItemsSource="{Binding Path=Game}">
<ListView.ItemTemplate>
<DataTemplate>
<StackPanel Height="200" Orientation="Horizontal">
<StackPanel.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="Black" Offset="0"/>
<GradientStop Color="#333" Offset="1"/>
</LinearGradientBrush>
</StackPanel.Background>
<Image MaxWidth="800" Height="175" Stretch="Fill" Source="{Binding Path=logoPath}"/>
<TextBlock Foreground="#ddd" Text="{Binding Path=Title}" />
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
ここに私のゲームクラス:
class Game
{
public Int32 id;
public string title;
public string type;
public string description;
public string logoPath;
public Game(Int32 a_id, string a_title, string a_type, string a_description, string a_logoPath)
{
id = a_id;
title = a_title;
type = a_type;
description = a_description;
logoPath = a_logoPath;
}
}
これは、ListViewまたはその親のDataContextがGameプロパティへの参照を保持するように設定されていない限り、動作しません。右? –
@AndréBRight。 OPがそれをしているかどうかは明らかではない。私は彼がいるという信念に傾いています。そうでなければ、コードでコードを割り当てていて、XAMLのバインディングはノブのノーオペレーションです。 –
私はいつも後者を試してみる傾向があります! 簡単な質問ですが、ListViewなど、マークアップ内のコントロールのItemsSourceプロパティを設定するたびにDataContextを設定する必要があるのはなぜですか? –