为什么不能粘贴从WPF FlowDocumentScrollViewer或Reader复制的文本?

| 在上一个问题中,我试图找出如何将ObservableCollection绑定到控件,以便既可以看到所有字符串,也可以选择所有字符串,然后从内容控件中复制它们。通过使用以下XAML,该问题的答案最终使我获得了所需的外观(以及看上去的行为)。 (我尝试了FlowDocumentReader和FlowDocumentScrollViewer-它们的行为相同。)
<Grid>
<FlowDocumentScrollViewer>
    <FlowDocument >
        <Paragraph>
            <ItemsControl ItemsSource=\"{Binding ErrorMessages, Mode=OneWay}\" />
            <Run Text=\"{Binding /, Mode=OneWay}\" />
        </Paragraph>
    </FlowDocument>
</FlowDocumentScrollViewer>
</Grid>
ErrorMessages是我的ViewModel属性,它返回一个ObservableCollection 。它正确绑定到ItemsSource,而元素绑定到集合中的每个字符串。看起来不错,可以持续很长时间。太接近了,我将最后一个问题标记为已回答,但是我仍然有一个问题。 我右键单击,然后出现一个菜单,其中包含“全选”和“复制”选项。使用“全选”确实可以突出显示所有文本,选择“复制”不会出现任何错误,但是当我进入记事本(或Word,TextPad等或表单上的RTB)并尝试粘贴文本时,什么也没有显示。作为WPF的新手,我怀疑自己做错了什么,但我不知道这是什么。那里没有\“ lookless \”文字吗? [编辑-2011年6月22日] 由于其他原因,我将代码更改为通过ItemsControl中的ItemTemplate使用TextBlock,如下所示,但我仍然无法复制和粘贴。
<DataTemplate x:Key=\"StringCollection\">
   <TextBlock TextWrapping=\"Wrap\" Text=\"{Binding}\" TextAlignment=\"Left\"/>
</DataTemplate>
<!--... now down in the ItemsControl-->
<ItemsControl ItemsSource=\"{Binding ReceivedData, Mode=OneWay}\"
      ItemTemplate=\"{StaticResource StringCollection}\" />
    
已邀请:
           “ 2”元素绑定到集合中的每个字符串。 它仅应绑定到当前元素(如果有)。 无论如何,如果您拥有的只是ItemsControl,则您的文档实际上根本不包含任何文本。为什么?因为文档中的所有UIElement都会自动以
BlockUIContainer
InlineUIContainer
包裹,并且不再被视为文本。 通常,内容被复制为XAML,RTF,UnicodeText和Text(我可以观察到,但可能还有其他格式),您可以尝试在文档中放置一些“ 5”,应正确复制其文本,“ 6”应返回它们内容。     

要回复问题请先登录注册