2008-09-17 73 views
4

我在標準WPF應用程序窗口中有一個FlowDocument,其中有一些文本,並且在此文本中有一些超鏈接和按鈕。在FlowDocument中啓用嵌入式控件

的問題是,如果我把這個FlowDocument的內部任何除了一個FlowDocumentPageViewer超鏈接和按鈕被禁用(「變灰」)。

<FlowDocumentScrollViewer> 
    <FlowDocument> 
     <Paragraph> 
     Hello, World! 
     <Hyperlink NavigateUri="some-uri">click me</Hyperlink> 
     <Button Click="myButton_Click" Content="Click me too!" /> 
     </Paragraph> 
    </FlowDocument> 
</FlowDocumentScrollViewer> 

以上將工作,鏈接將可點擊。但是,我不想要完整的頁面查看器的東西,因爲它會顯示導航按鈕(後退/前進)縮放,它也有一個奇怪的列行爲。

我想要它在一個簡單的FlowDocumentScrollViewer(或其他任何只顯示文本,沒有額外的絨毛)。

編輯: 這不僅是超鏈接是問題。 任何控件(如Button,ListBox,ComboBox - 用戶可以與之交互的任何內容)都會「灰顯」,無論IsEnabled屬性如何,如果FlowDocument位於FlowDocumentScrollViewer中。

EDIT2: 好吧,那一定是從我結束一個錯誤或東西,因爲我結束了重寫的控制,現在它的工作原理。我想如果IsEnabled = False在視覺樹中的某處導致了這種情況,那麼會出現某種情況。

回答

2

我使用的是FlowDocumentScrollViewer我約箱:

<FlowDocumentScrollViewer VerticalScrollBarVisibility="Auto"> 
    <FlowDocument> 
     <Paragraph> 
      <!-- ... --> 

我沒有任何你所提到的控制或問題。

0

我想知道你是否在期待這樣的事情?

<TextBlock> 
<Hyperlink> 
    <Run Text="Test link"/> 
</Hyperlink > 

</TextBlock> 
+0

我寧願使用FlowDocument,因爲它給了我一些額外的格式化功能。 (我正在使用這個爲我的應用程序提供一些簡單的在線幫助 - 只是一個簡要說明如何執行任務的對話框) – 2008-09-17 07:22:09