【发布时间】:2010-10-22 14:10:00
【问题描述】:
我有一个列表框的项目模板,它绑定到列表中的对象。这个列表中每个对象的属性是bool,List
Bool 映射到复选框,List 提供每一行的下拉菜单,其余两个字符串映射到每个文本框。
一切正常 - 当我点击组合框时,下拉菜单显示正常。
直到将光标直接从组合框控件的原始足迹上移动,以从下拉列表中选择一个项目:
http://i.stack.imgur.com/igdTJ.png
可以看出,当我移动光标时,下拉列表中的条目出现了,但下拉列表的其余内容消失了。很奇怪!有任何想法吗?我的 xaml 如下,你应该不会发现其中有什么特别奇怪的:
<StackPanel Orientation="Vertical" >
<StackPanel CanVerticallyScroll="True" Orientation="Horizontal">
<Label HorizontalAlignment="Left" VerticalAlignment="Center" Content="Key" />
<Label HorizontalAlignment="Left" VerticalAlignment="Center" Content="Source Fields" />
<Label HorizontalAlignment="Left" VerticalAlignment="Center" Content="Source Values" />
<Label HorizontalAlignment="Left" VerticalAlignment="Center" Content="Target Field"/>
</StackPanel>
<ListBox ItemsSource="{Binding FieldMap.SourceTargetFieldMap, Mode=Default}">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" Margin="5,5,5,5">
<CheckBox Name="ckbKeyField" HorizontalAlignment="Center" VerticalAlignment="Center" Width="Auto" Height="Auto" IsChecked="{Binding Path=Key, Mode=TwoWay}" />
<ComboBox Name="cbSourceField" SelectedValuePath="FieldName" SelectedValue="{Binding Path=SourceField, Mode=TwoWay}" DisplayMemberPath="FieldName" ItemsSource="{Binding SourceFieldValues}" HorizontalAlignment="Center" VerticalAlignment="Stretch" Width="120" />
<TextBox Name="tbSourceValue" Margin="5,0,0,0" Text="" TextWrapping="Wrap" Width="115" />
<TextBox Name="tbTargetField" Margin="5,0,0,0" Text="{Binding Path=TargetField}" TextWrapping="Wrap" Width="155" IsReadOnly="True"/>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</StackPanel>
有什么想法吗???我已经在网上搜索了答案,但可惜我没有......
干杯,
马特
【问题讨论】: