我已經定義如下監視列表:WPF組合框忽略的ToString覆蓋對象
// a named list of VariableWatchers
public class WatchList : List<VariableWatcher>
{
private string _name;
public WatchList(string name) : base()
{
_name = name;
}
public override string ToString()
{
return _name;
}
}
我必將監視列表的組合框的ItemsSource屬性的列表如下:
<ComboBox x:Name="WatchListDropdown"
ItemsSource="{Binding Path=WatchLists}"
VerticalAlignment="Center"
Margin="5"/>
「觀察列表「是指我的DataContext中的以下屬性:
public IList<WatchList> WatchLists
{
get { return _watchLists; }
}
一切正常工作很好excep t列表中的所有條目都顯示爲「(Collection)」而不是_name變量。我在ToString中放置了一個斷點,並確認它在某個時刻被調用,並返回了正確的值,但不知何故,ComboBox仍然顯示「(Collection)」。
謝謝,工作!我也很困惑,爲什麼它不使用ToString,因爲之前一直對我有用。 – hypehuman