鉴于此对象XAML绑定到索引的元素结合
class Contact
{
public IEnumerable<Person> People { get; }
public string PhoneNumber { get; }
}
class Person
{
public string MobileNumber { get; }
}
的财产和下面的布局
<Contact>
<PhoneNumber/>
<SinglePerson.MobileNumber/>
<People>
<MobileNumber />
</People>
<Contact>
我希望做的是隐藏在人们元素只有一个时人,并显示SinglePerson.Mobile号码元素。
隐藏是相当容易:
<Style.Triggers>
<DataTrigger Binding="{Binding Path=People.Count}" Value="1">
<Setter Property="Visibility" Value="Collapsed" />
</DataTrigger>
</Style.Triggers>
显示稍微有些棘手:
<Setter Property="Visibility" Value="Collapsed"/>
<Style.Triggers>
<DataTrigger Binding="{Binding Path=People.Count}" Value="1">
<Setter Property="Visibility" Value="Visible" />
</DataTrigger>
</Style.Triggers>
,我可以不知道如何做的事情是对<SinglePerson.MobileNumber>
文本结合第一人员列表中的人员。我已经试过“{结合人物[0] .MobilePhone}”的变种,但不起作用。
这有可能吗?
酷,工程确定对我来说,我做了一个FirstPersonMobileConverter(我可以已经决定在属性名作为参数来传递,这将是下一个版本)。 – Benjol 2009-08-26 10:30:45