0

我有 2 个 XAML 页面:

a) PagePrinting.xaml
b) FormattedPage.xaml

--1--- 在 FormattedPage.xaml 中,我有一个 RichtextBlock :

<富文本块>
 <段落>
 <内联UIContainer>
   <ItemsControl ItemsSource="{绑定 YourItems}">
    <ItemsControl.ItemTemplate>
        <数据模板>
          <!-- 数据模板 -->
        </数据模板>
     </ItemsControl.ItemTemplate>
 </ItemsControl>
</InlineUIContainer>
</段>
</RichTextBlock>


------2-- 在 PagePrinting.xaml 中:

我有来自 SQLite Db 的 FormattedPage.XAML 的数据,用于上述 (1)


ObservableCollection <Transaction> TransCollection = new ObservableCollection <Transaction>();

页面加载:

TransCollection.Clear();

var db = new SQLiteAsyncConnection(dbPath);
var Trans = await db.QueryAsync <BizTransaction>("Select * From BizTransaction Where SalesId = '" + Id + "'");         

int intRecord = Trans.Count();

如果 (intRecord != 0)
 {
   foreach (var _trans in Trans)
   {
      int Id = _trans.Id;
      字符串名称 = _trans.Description;
      字符串 ItemNo = _trans.No;
      int 数量 = (int)_trans.Quantity;
      小数价格 = _trans.UnitPrice;
      十进制 LineAmt = _trans.LineAmount;

      //-- 创建一个集合
     AddToList(Id,名称,ItemNo,数量,价格,LineAmt);

   }


this.DataContext = TransCollection;

 框架元素第 1 页;

 page1 = new FormattedPage();

 page1.DataContext = this.DataContext;

 CanvasPrintContainer.Children.Add(page1);



问题:

1)这是正确的吗?

this.DataContext = TransCollection;
page1.DataContext = this.DataContext;

2) 如何使用此 DataContext 在 FormattedPage.xaml 中进行绑定?

3) 在 DataBinding 的 PagePrinting 的 xaml 部分需要做什么?


谢谢

4

1 回答 1

0

这是目前最好的例子。

http://code.msdn.microsoft.com/windowsapps/Print-Sample-c544cce6

于 2014-04-19T22:37:00.837 回答