在WPF中创建可选择的文本内容

时间:2015-04-29 12:11:10

标签: c# .net wpf xaml

我需要在WPF项目中创建一个报告页面,其内容已动态生成。所以我需要绑定视图模型中的内容。这是我实施的:

<ScrollViewer HorizontalScrollBarVisibility="Auto" Padding="5">
            <ItemsControl ItemsSource="{Binding Path=MyListCategoryWise}">
                <ItemsControl.ItemTemplate>
                    <DataTemplate>
                        <StackPanel Orientation="Vertical">
                            <TextBlock Text="{Binding Path=Key}" FontSize="15" FontWeight="Bold" />
                            <ItemsControl ItemsSource="{Binding Path=Value}">
                                <ItemsControl.ItemTemplate>
                                    <DataTemplate>
                                        <Grid>
                                            <Grid.ColumnDefinitions>
                                                <ColumnDefinition Width="50" />
                                                <ColumnDefinition />
                                                <ColumnDefinition />
                                            </Grid.ColumnDefinitions>
                                            <TextBlock Grid.Column="1" Text="{Binding Path=ItemDescription}" VerticalAlignment="Center" />
                                            <TextBlock Grid.Column="2" IsReadOnly="True" Width="200" VerticalAlignment="Center" Text="{Binding Path=ItemCountString, Mode=OneWay}"/>
                                        </Grid>
                                    </DataTemplate>
                                </ItemsControl.ItemTemplate>
                            </ItemsControl>
                        </StackPanel>
                    </DataTemplate>
                </ItemsControl.ItemTemplate>
            </ItemsControl>
        </ScrollViewer>

所以这是我想要的正确格式创建一个包含所需文本的表单,但问题是它没有选择内容支持。 (选择全部,复制等)

所以我正在寻找将整个内容放在一个多行文本框中(这将有所有选择,复制等支持)。从此绑定的视图模型中生成一个字符串。但是在那种情况下,我再也无法显示格式化的文本(就像我可以显示的一些内容一样)

在WPF中显示此类报告的最佳控件是什么。

1 个答案:

答案 0 :(得分:1)

  

在WPF中显示此类报告的最佳控件是什么。

您是否考虑过DocumentViewer并将报告写入文件。 另一种创建报告的好方法就是水晶报告。它有一个报告创建者来帮助制作报告,您可以在水晶查看器中生成所有想要做的事情。

我想说这些是在WPF中显示(最简单)报告的最佳方式。