2010-10-02 49 views
1

我只找到一個辦法:如何選擇TextBock中的文本?

<TextBox Text="Text!" 
IsReadOnly="True" 
IsTabStop="False" 
BorderThickness="0" 
> 
    <TextBox.Style> 
     <Style TargetType="{x:Type TextBox}"> 
      <Style.Triggers> 
       <MultiTrigger> 
        <MultiTrigger.Conditions> 
         <Condition Property="IsMouseOver" Value="False" /> 
         <Condition Property="IsFocused" Value="False" /> 
        </MultiTrigger.Conditions> 
        <Setter Property="Template"> 
         <Setter.Value> 
          <ControlTemplate TargetType="{x:Type TextBox}"> 
           <TextBlock Text="{TemplateBinding Text}" /> 
          </ControlTemplate> 
         </Setter.Value> 
        </Setter> 
       </MultiTrigger> 
      </Style.Triggers> 
     </Style> 
    </TextBox.Style> 
</TextBox> 

還有另一種選擇不是那麼大?

回答

3

Gishu有正確的想法。

使用文本框並使其成爲只讀。用戶可以選擇並複製文本,但不能更改文本。

<TextBox IsReadOnly='True' Text='ABC ABD ABC ABD'/> 
+1

是的。充滿幸福,我們必須添加BorderThickenes = 0 – Mediator 2010-10-03 08:07:58

1

爲什麼不使用TextBox如果你希望它是交互式的?
TextBlocks應該用於顯示靜態文本 - 它是WPF標籤的輕量級變體。

+0

我需要那將是互動的,只是你可以選擇和複製。 標籤也不會簡單地釋放文本 – Mediator 2010-10-02 15:07:41

+0

,如果您需要能夠右鍵單擊並複製文本,我認爲您應該使用文本框。如果您不希望用戶更改文本,請將其只讀屬性設置爲true。 – Gishu 2010-10-03 03:57:38

相關問題