Wpf 为什么以下代码不起作用?-xaml中的空指针异常
我在setter中的targetname上得到一个空指针异常,在这里我设置了focusmanager.focuselement属性。我不知道为什么它不起作用。任何帮助都将不胜感激Wpf 为什么以下代码不起作用?-xaml中的空指针异常,wpf,xaml,triggers,focus,setter,Wpf,Xaml,Triggers,Focus,Setter,我在setter中的targetname上得到一个空指针异常,在这里我设置了focusmanager.focuselement属性。我不知道为什么它不起作用。任何帮助都将不胜感激 <Style x:Key="DesignerItemStyle" TargetType="ContentControl"> <Setter Property="MinHeight" Value="50"/> <Setter Property="MinWid
<Style x:Key="DesignerItemStyle" TargetType="ContentControl">
<Setter Property="MinHeight" Value="50"/>
<Setter Property="MinWidth" Value="50"/>
<Setter Property="RenderTransformOrigin" Value="0.5,0.5"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ContentControl">
<Grid DataContext="{Binding RelativeSource={RelativeSource TemplatedParent}}">
<s:MoveThumb Template="{StaticResource MoveThumbTemplate}" Cursor="SizeAll"/>
<Control x:Name="ResizeDecorator" Template="{StaticResource ResizeDecoratorTemplate}" Visibility="Collapsed"/>
<ContentPresenter Content="{TemplateBinding ContentControl.Content}"/>
<TextBox x:Name="textboxName" Text="node" Background="Transparent" BorderBrush="Transparent" BorderThickness="0" HorizontalAlignment="Center" VerticalAlignment="Center" Width="Auto" Height="Auto" IsHitTestVisible="False"/>
<TextBox x:Name="count" Text="100" Background="Transparent" BorderBrush="Transparent" BorderThickness="0" HorizontalAlignment="Right" VerticalAlignment="Bottom" Width="Auto" Height="Auto" IsHitTestVisible="False"/>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsKeyboardFocused" Value="True">
<Setter TargetName="ResizeDecorator" Property="Visibility" Value="Visible"/>
</Trigger>
<Trigger Property="IsManipulationEnabled" Value="True">
<Setter TargetName="textboxName" Property="IsHitTestVisible" Value="True"/>
<Setter TargetName="textboxName" Property="FocusManager.FocusedElement" Value="textboxName"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
我在您的代码中没有看到targetname。开始删除样式的各个部分,直到它编译以缩小问题范围 关于no targetname,您指的是哪一行,我知道问题在哪里,它是IsManuplationEnabled
的触发器中的第二个setter,例外情况是targetname没有实例化,但同一触发器中的第一个setter是workgin fine。我认为在创建视图时,您的焦点管理器尚未设置。您对我如何解决这一问题有何建议。我认为您无法做到这一点。也许可以将焦点设置移到主样式之外的数据模板上?这样,只有在焦点管理器实例化之后,才会尝试访问它。。。。