私はこれに約2日間苦労しており、問題の答えや解決策を得ることができません. 私はC#WPFを使用していますが、私の問題は次のとおりです。
ItemsSource がバインドされる Datagrid があります。すべての TextColumn は、その値を適切に表示しています。画像またはボタンを含む DataTemplateColumns は、そのセルに入らない限り、その値を表示しません。私は自分の DataGrid を読み取り専用にして、セルをクリックするのではなく、写真を一度に表示したいと考えています。ただし、セルをクリックした場合にのみ表示されます。すでにさまざまな画像形式(png、bmp、jpg)を試しました
では、その DataGrid の問題は何ですか?
DataTemplaceColumn を含む XAML 部分を次に示します。
<DataGrid AlternatingRowBackground="Gainsboro"
AlternationCount="2"
AutoGenerateColumns="False"
Height="200"
HorizontalAlignment="Left"
ItemsSource="{Binding}"
Name="DgMain"
VerticalAlignment="Top"
Width="778"
CanUserReorderColumns="False"
CanUserResizeColumns="False"
CanUserResizeRows="False"
CanUserSortColumns="True"
IsReadOnly="True">
<DataGrid.Columns>
<DataGridTemplateColumn Header="Pic">
<DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<Image x:Name="ImgDgMainPic"></Image>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding pic}" Value="pic1">
<Setter TargetName="ImgDgMainPic" Property="Source" Value="Images\picture1.png"/>
</DataTrigger>
<DataTrigger Binding="{Binding pic}" Value="pic2">
<Setter TargetName="ImgDgMainPic" Property="Source" Value="Images\picture2.png"/>
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
</DataGridTemplateColumn.CellEditingTemplate>
</DataGridTemplateColumn>
DataTriger がバインドする値は、ご覧のとおり、「pic1」または「pic2」を含む文字列です。
前もって感謝します