在文本框上设置普通光标

时间:2017-03-14 16:13:23

标签: wpf xaml

可以删除此光标:

indexOf (String str, int fromIndex)

并将默认箭头放在TextBlock中?我实际上尝试了这个属性

IsReadOnlyCaretVisible="True"

但没有任何改变,我也想知道是否可以删除鼠标悬停在TextBox上的焦点,实际上我试过了:Focusable="False" 但也没有工作。

1 个答案:

答案 0 :(得分:0)

您可以将Cursor属性设置为Arrow,将CaretBrush属性设置为Transparent

<TextBox Cursor="Arrow" CaretBrush="Transparent" />
  

我也想了解是否可以删除鼠标悬停在TextBox上的焦点,实际上我试过了:Focusable =&#34; False&#34;但也没有工作。

请仅在一篇文章中提出一个问题,如果您有其他问题,请创建一个新问题。

但要删除焦点突出显示,您应该修改TextBox

的控件模板
<TextBox Cursor="Arrow" CaretBrush="Transparent">
    <TextBox.Template>
        <ControlTemplate TargetType="{x:Type TextBox}">
            <Border x:Name="border" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" SnapsToDevicePixels="True">
                <ScrollViewer x:Name="PART_ContentHost" Focusable="false" HorizontalScrollBarVisibility="Hidden" VerticalScrollBarVisibility="Hidden"/>
            </Border>
            <ControlTemplate.Triggers>
                <Trigger Property="IsEnabled" Value="false">
                    <Setter Property="Opacity" TargetName="border" Value="0.56"/>
                </Trigger>
            </ControlTemplate.Triggers>
        </ControlTemplate>
    </TextBox.Template>
</TextBox>