2010-03-12 57 views

回答

8

否。Silverlight TextBlock不支持選擇。您需要改爲在只讀模式下使用文本框。爲了讓用戶體驗更加無縫,您可以將文本框設置爲具有正常的箭頭光標而不是I型光束。

+0

這就是我一直在閱讀。我希望有人能夠通過使用某種行爲或其他方式來做更好的事情。 – 2010-03-12 01:22:50

+0

@加布裏埃爾我有同樣的希望,但不幸的是你不能。 TextBlock不會像TextBox那樣呈現文本。 – 2010-03-12 01:25:02

+0

這會殺死可用性。 – 2011-07-18 22:03:50

18

我後來找到了解決方案,我想分享它。解決方案可以找到here。從該頁面

摘錄:

...改變文本框的樣式。放入的App.xaml以下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屬性爲真,你的文本框會看起來像一個文本塊,但它可以複製。

+0

謝謝,完美的作品! – Jage 2012-02-13 16:29:00

+0

鏈接不再工作,這是'TextBox'的解決方案。 OP清楚地說'TextBlock' – Julien 2012-11-29 21:02:25

+3

@Julien:我更新了鏈接。如果你看,我是OP。我問,有人回答說沒有實際的文本塊解決方案。這是一個正確的答案。這就是我接受它的原因。我發現了一個解決方法,我在這裏發佈了它。解決方法是使用文本框,將其設計爲文本塊的外觀和功能(除了允許用戶選擇和複製文本)。 – 2012-11-29 22:23:36