У меня есть MainWindow, которое содержит список и ContentControl, каждый раз, когда вы выбираете что-то из списка, ContentControl будет отображать что-то еще.
<ContentControl Content="{Binding ElementName=SomeList, Path=SelectedItem.Content}" />
<ListBox x:Name="SomeList" Margin="0 16 0 16" SelectedIndex="0" SelectedValue="{Binding X}"
ItemsSource="{Binding DemoItems}">
ViewModel:
private string _X;
public string X
{
get { return _X; }
set
{
_X = value;
NotifyOfPropertyChange("X");
}
}
Попытка отобразить X приведет к тому же:
namespace.DemoItem
DemoItem.cs:
public class DemoItem : INotifyPropertyChanged
{
private object _icon;
private string _name;
private object _content;
private Thickness _marginRequirement;
public DemoItem(object icon, string name, object content, Thickness margin, IEnumerable<DocumentationLink> documentation)
{
_icon = icon;
_name = name;
Content = content;
_marginRequirement = margin;
Documentation = documentation;
}
}
Так как можно получить только имя?