У меня есть интерфейсы:WPF: Как связать с интерфейсом, который наследуется от другого интерфейса?
public interface IDocument : IEntity
{
string FileName { get; set; }
...
}
public interface IEntity : IComparable
{
int Id { get; set; }
...
}
я хотел бы, чтобы связать следующим образом:
<ItemsControl Grid.Row="0" ItemsSource="{Binding SelectedEventPhotoList}"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
Name="SelectedListView">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Rows="1" Columns="3"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Path=(documents:IDocument.FileName)}"/>
<TextBlock Text="{Binding Path=(documents:IDocument.Id)}"/>
</StackPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
SelectedEventPhotoList помещается для просмотра модели следующим образом:
public List<IDocument> SelectedEventPhotoList
{
get { return _selectedEventPhotoList; }
set
{
if (Equals(value, _selectedEventPhotoList))
return;
_selectedEventPhotoList = value;
RaisePropertyChanged(() => SelectedEventPhotoList);
}
}
первого связывающий to FileName работает нормально, а второй - нет.
Как заставить его работать?
@Clemens Не эти [привязки к явным реализациям интерфейса] (http://stackoverflow.com/a/1827579/5246145)? – 3615
@ 3615: Я сделал это. – tesicg
Я обновил исходное сообщение. Взгляни, пожалуйста. – tesicg