【问题标题】:How to select text in silverlight 3.0 text block如何在 silverlight 3.0 文本块中选择文本
【发布时间】:2010-03-12 01:04:47
【问题描述】:

是否允许用户像在任何 HTML 页面中一样选择 Silverlight 文本块(而非文本框)中的文本?

【问题讨论】:

    标签: silverlight silverlight-3.0


    【解决方案1】:

    后来我找到了一个解决方案,我想分享它。解决方法可以在here找到。

    摘自该页面:

    ...更改文本框的样式。将以下 Xaml 代码放入 App.xaml 或其他资源中:

    <Style x:Key="TextBoxStyle" TargetType="TextBox">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="TextBox">
                    <Grid x:Name="RootElement">       
                        <ScrollViewer x:Name="ContentElement" Background="{TemplateBinding Background}" Padding="{TemplateBinding Padding}" BorderThickness="0"/>       
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
    

    然后将您的文本框的样式设置为“{StaticResource TextBoxStyle}”,并将 IsReadOnly 属性设置为 true,您的文本框将看起来像一个文本块,但可以复制。

    【讨论】:

    • 链接不再起作用,这是TextBox 的解决方案。 OP明确表示TextBlock
    • @Julien:我更新了链接。如果你看,我是OP。我问了,得到的回答是没有实际的文本块解决方案。这是一个正确的答案。这就是我接受它的原因。我找到了解决方法,并将其发布在这里。变通方法使用文本框,其外观和功能类似于文本块(除了它允许用户选择和复制文本)。
    【解决方案2】:

    没有。 Silverlight TextBlock 不支持选择。您将需要在只读模式下使用 TextBox。为了使用户体验更加无缝,您可以将 TextBox 设置为具有普通箭头光标而不是 I 形光标。

    【讨论】:

    • 这就是我一直在阅读的内容。我希望有人能够通过使用某种行为或某事来做得更好。
    • @Gabriel 我也有同样的希望,但不幸的是你不能。 TextBlock 呈现文本的方式与 TextBox 不同。
    猜你喜欢
    • 2011-01-28
    • 2011-08-11
    • 2023-03-05
    • 1970-01-01
    • 2023-03-10
    • 1970-01-01
    • 1970-01-01
    • 2020-04-20
    • 2011-02-05
    相关资源
    最近更新 更多