私はそのようにレイアウトされたグリッドを持っています;
+---------+---------+
| Image | Details |
| is | pane |
| here | for data|
| | entry |
+---------+---------+
| ListView here to |
| select data item |
| for top two panes |
+---------+---------+
これはすべてうまくいきますが、リストビューで選択したアイテムに画像がない場合、「申し訳ありませんが、画像がありません」という別のコントロールセットに画像を変更したいと思います
画像を DockPanel にラップし、そこに DataTemplate を設定しようとしましたが (DataTriggers を使用できるように)、IntelliSense はノーと言います!
ListView は DataTriggers を使用して同様のことを行いますが、私が言うように、DataTemplate にアクセスできないように見える単一の画像に対してそれを行う方法がわかりません。
簡略化された XAML は以下のとおりです。
<Grid DataContext="{Binding Source={StaticResource MyData}}">
<!-- row 0 col 0 -->
<Image x:Name="imgPhoto" Source="{Binding ElementName=MyListViewOfData, Path=SelectedItem.PathToImageOnDisk}" />
<!-- row 0 col 1 -->
<StackPanel DataContext="{Binding ElementName=MyListViewOfData, Path=SelectedItem}">
<TextBox Name="NameTextBox" Text="{Binding Name}" />
<TextBlock Name="DateCreatedTextBlock" Text="{Binding DateCreated}" />
</StackPanel>
<!-- row 1 cols 0,1 -->
<ListView ItemsSource="{Binding}" ItemTemplate="{StaticResource MyListViewTemplate}"
IsSynchronizedWithCurrentItem="True" Name="MyListViewOfData" />
</Grid>
WPFの達人に感謝します。
ライアン
更新: 以下の両方の回答 (Abe と Jobi) は的確でした、ありがとう。