简体   繁体   English

将复选框添加到段落

[英]Add Checkbox to Paragraph

Hy!

I want to add a checkbox to a paragraph. 我想在段落中添加一个复选框。

My code: 我的代码:

        PrintDialog pd = new PrintDialog();
        pd.ShowDialog();
        FlowDocument doc = new FlowDocument();
        Paragraph ph = new Paragraph();
        ph.Inlines.Add(new Bold(new Run("TODO\n")));
        foreach (CheckBox cb in box.Items)
        {
            int value = Convert.ToInt32("0x6F", 16);
            string stringValue = Char.ConvertFromUtf32(value);
            CheckBox bt = new CheckBox();
            bt.IsChecked = false;
            ph.Inlines.Add(new Run(bt + " "+cb.Content.ToString()));
        }
        doc.Name = "FlowDoc";
        doc.Blocks.Add(ph);
        IDocumentPaginatorSource idpSource = doc;
        pd.PrintDocument(idpSource.DocumentPaginator, "Hello WPF Printing."); 

the output is wrong: 输出错误:

TODO System.Windows.Controls.CheckBox Content: IsChecked:False hahaSystem.Windows.Controls.CheckBox Content: IsChecked:False haha1System.Windows.Controls.CheckBox Content: IsChecked:False hallo

Please help! 请帮忙!

You could use BlockUIContainer http://msdn.microsoft.com/en-us/library/system.windows.documents.blockuicontainer.aspx 您可以使用BlockUIContainer http://msdn.microsoft.com/zh-cn/library/system.windows.documents.blockuicontainer.aspx

PrintDialog pd = new PrintDialog();
pd.ShowDialog();
FlowDocument doc = new FlowDocument();
Paragraph ph = new Paragraph();
StackPanel sp = new StackPanel();
BlockUIContainer buc = new BlockUIContainer(sp);
ph.Inlines.Add(new Bold(new Run("TODO\n")));

foreach (CheckBox cb in box.Items)
{
    int value = Convert.ToInt32("0x6F", 16);
    string stringValue = Char.ConvertFromUtf32(value);
    CheckBox bt = new CheckBox();
    bt.IsChecked = false;
    bt.Content = cb.Content;
    //ph.Inlines.Add(new Run(bt + " " + cb.Content.ToString()));
    sp.Children.Add(bt);
 }

        doc.Name = "FlowDoc";
        doc.Blocks.Add(ph);
        doc.Blocks.Add(buc);
 IDocumentPaginatorSource idpSource = doc;
 pd.PrintDocument(idpSource.DocumentPaginator, "Hello WPF Printing."); 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM