【发布时间】:2014-02-19 18:28:41
【问题描述】:
这些项目在
<ListBox.ItemTemplate> <DataTemplate>
我遇到的问题是左键单击第一个 ContentControl 没有选择行
左键单击 TextBlock 确实选择了行
如果我注释掉滚动查看器,它就可以工作。
所以看起来 ScrollViewer 正在吃点击。
我将尝试将 Visibility 移至 ScrollView。
visabilityConverterReverse 只返回 Visible 为 false 和 Collapsed 为 true
选择行时,我替换相同数据的更多字符
<TextBlock Grid.Row="0" Grid.Column="0" TextWrapping="NoWrap" TextTrimming="CharacterEllipsis"
Text="{Binding Path=FieldDefApplied.FieldDef.DispName}"/>
<ContentControl Grid.Row="0" Grid.Column="1" Margin="2,0,0,0" Padding="0" MouseRightButtonDown="cc_CopyToClip" FontWeight="Normal"
Visibility="{Binding RelativeSource={RelativeSource AncestorType=ListBoxItem}, Path=IsSelected, Converter={StaticResource visabilityConverterReverse}}"
Content="{Binding Path=DispValueShortRunHighlight, Converter={StaticResource stringToXaml}}"/>
<ScrollViewer Grid.Row="0" Grid.Column="1" Grid.RowSpan="3" Margin="5,0,0,0" Padding="0"
HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Auto" MaxHeight="140">
<ContentControl MouseRightButtonDown="cc_CopyToClip"
Visibility="{Binding RelativeSource={RelativeSource AncestorType=ListBoxItem}, Path=IsSelected, Converter={StaticResource bvc}}"
Content="{Binding Path=DispValueRunHighlight, Converter={StaticResource stringToXaml}}"/>
</ScrollViewer>
【问题讨论】:
-
刚刚在小样本中尝试过这个并为我工作。你能发布小的相关代码来重现这个问题吗?
-
@RohitVats 紧紧抓住,因为这是大量的代码,还有很多其他的东西在发生。可能是我在同一行和列中有两个 ContentControl,它们彼此相对可见。
-
是的,问题可能出在其中。尝试在小样本中复制它,以便您可以轻松追踪它。大代码总是一团糟:)
-
@RohitVats 看来问题是 ScrollView。让我来解决这个问题。
-
@RohitVats 如果你想发布 ScrollViewer 是我会接受的问题。或者我只会删除。你告诉我它没有重现是解决了这个问题。
标签: .net wpf listbox contentcontrol