2013-11-20 103 views
2

這裏是我的代碼:如何用文字添加超鏈接的文本框中

<TextBlock TextWrapping="Wrap" TextAlignment="Left"> 
    <TextBox IsReadOnly="True" BorderThickness="0" TextWrapping="Wrap">  
     Please enter your details for login: questions follow the link 
    </TextBox> 
    <Hyperlink NavigateUri="https:" RequestNavigate="Hyperlink_RequestNavigate"> 
     Reset Password 
    </Hyperlink> 
</TextBlock> 

文本框不會讓我設置文本超鏈接。我需要將超鏈接保留在文本框之外,這會創建一個新行。但我希望超鏈接串聯到文本。

我在TextBlock中使用TextBox的原因是爲了使文本可選。

回答

4

我建議溶液採用單RichTextBox

<RichTextBox IsReadOnly="True" IsDocumentEnabled="True" > 
     <FlowDocument> 
      <Paragraph> 
       Please enter your details for login: questions follow the link 
       <Hyperlink NavigateUri="https:" RequestNavigate="Hyperlink_RequestNavigate">Reset Password</Hyperlink> 
      </Paragraph> 
     </FlowDocument> 
    </RichTextBox> 
0

如果你用StackPanel替換你的外部TextBlock,它是否實現你想要的?

<StackPanel Orientation="Horizontal"> 
    <TextBox VerticalAlignment="Center" IsReadOnly="True" BorderThickness="0" TextWrapping="Wrap"> 
     Please enter your details for login: questions follow the link 
    </TextBox> 
    <TextBlock VerticalAlignment="Center"> 
     <Hyperlink NavigateUri="https:" RequestNavigate="Hyperlink_RequestNavigate"> 
      Reset Password 
     </Hyperlink>  
    </TextBlock> 
</StackPanel> 
+0

因爲上面堆疊面板水平地對準元件它不會達到要求。我有窗口大小問題,所以文本和超鏈接應該進入新行。 – user1118468

+0

@ user1118468然後設置StackPanel Orientation =「Vertical」 – Kcvin

相關問題