私はしようとしPrint
ます。そこで、次のように WPF ウィンドウを作成しました。List of objects
Crystal Report
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
using CrystalDecisions.CrystalReports.Engine;
using CrystalDecisions.Shared;
namespace Winlease.UI
{
/// <summary>
/// Logique d'interaction pour EcheancierPrint.xaml
/// </summary>
public partial class EcheancierPrint : Window
{
List<T> ListToPrint = null;
public EcheancierPrint(List<T> lst) : base()
{
ListToPrint = lst;
}
public EcheancierPrint()
{
InitializeComponent();
}
private void Window_Loaded_1(object sender, RoutedEventArgs e)
{
ReportDocument rd = new ReportDocument();
rd.Load("../../Echeancier.rpt");
rd.SetDataSource(ListToPrint);
}
}
}
このウィンドウは、別のウィンドウのボタンの Click イベント ハンドラーから呼び出されます。コードは次のとおりです。
private void cmdPrint_Click(object sender, RoutedEventArgs e)
{
EcheancierPrint pe = new EcheancierPrint(echeancier);
}
Echeancier
とList of Object
呼ばれるものEcheance
です。型"T"とメソッドInitializeComponentは赤い下線が引かれ、WPF コンパイラから受け入れられません。命令の同じ動作:
EcheancierPrint pe = new EcheancierPrint(echeancier);