当我在WPF应用程序中从一个字段到另一个字段时,我突出显示与每个字段关联的标签。这适用于ComboBox和TextBox项目,但不适用于ListViews或DatePickers。我正在使用标签标签的绑定部分中的IsFocused路径部分(参见下面的代码)。
<Label
Style="{StaticResource styleLabelTextBlockLeft}"
Target="{Binding ElementName=dpBrthDt}"
Tag="{Binding ElementName=dpBrthDt, Path=(IsFocused)}"
>
<TextBlock
TextWrapping="Wrap">When were you born?
</TextBlock>
</Label>
<DatePicker
x:Name="dpBrthDt"
HorizontalAlignment="Left"
SelectedDate="{Binding
Path=CurrentEntity.BrthDt,
Mode=TwoWay,
ValidatesOnDataErrors=True,
NotifyOnValidationError=True
}"
Width="115"
/>
为什么引用IsFocused的标签的Binding部分可以在TextBoxes / ComboBoxes而不是DatePickers / ListViews上运行?感谢。
答案 0 :(得分:0)
可能是因为ListViews
和DatePickers
内部包含多个元素,因此IsFocused
元素是控件内部的元素,而不是实际控件本身。
使用属性IsKeyboardFocusWithin
代替IsFocused
,它应该可以正常工作