我有一個可觀察的集合綁定到列表框。 收集有2項,但列表框中顯示3項(如2項,實際上是觀察集合併爲NewItemPlaceholder額外的項目。Listbox數據綁定NewItemPlaceholder
我希望它只顯示2項。
下面是我的XAML
<ListBox MinHeight="20" MinWidth="20" Name="MultipleSelectionsMultipleWagersListBox" Visibility="{Binding Path=Coupon.BarcodeText, Converter={StaticResource CouponBarcodeToVisibilityConverter1}, ConverterParameter=994450_994550}" Height="AUto" Width="Auto" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Margin="5"
ItemsSource="{Binding Path=BetViewModels}" Grid.Row="1" Grid.Column="1" >
<ListBox.ItemTemplate>
<DataTemplate>
<View:BetView DataContext="{Binding}" Name="ThisBet" Margin="5"/>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
這裏是C#
private ObservableCollection<BetViewModel> _betViewModels = new ObservableCollection<BetViewModel>();
public ObservableCollection<BetViewModel> BetViewModels
{
get { return _betViewModels; }
set
{
if (Equals(value, _betViewModels)) return;
_betViewModels = value;
OnPropertyChanged("BetViewModels");
}
}
這裏被填充betViewModels代碼:
var betViewModel = new BetViewModel { Bet = new Bet() };
betViewModel.Bet.SelectionName = "Chelsea";
betViewModel.Bet.Price = "4/9";
betViewModel.Bet.Market = "90 Minutes";
betViewModel.Bet.ExpectedOdd = DateTime.Now;
BetViewModels.Add(betViewModel);
betViewModel = new BetViewModel { Bet = new Bet() };
betViewModel.Bet.SelectionName = "Chelsea";
betViewModel.Bet.Price = "4/9";
betViewModel.Bet.Market = "90 Minutes";
betViewModel.Bet.ExpectedOdd = DateTime.Now;
BetViewModels.Add(betViewModel);
如何從展示新項目的地方
在這裏的附加項目切換的,這是它的顯示的佔位符圖像
沒有在你這裏顯示了什麼指示有關您遇到的任何問題。這不是ListBox本身發生的事情,所以你對ItemsSource做的其他事情正在導致這種情況。 – 2013-03-06 14:42:58
@ John Bowen,是因爲我們正在使用DataTemplate(如上所示)? – DermFrench 2013-03-06 14:47:44
不可以。正如我所說,這與您在此處顯示的任何內容無關。你需要顯示你正在做什麼與你的ItemsSource集合。 – 2013-03-06 14:54:43