xamSpreadsheet で Excel ファイルを読み込み、表示をしてみましょう。
プロジェクトファイルのディレクトリ構成は以下のような想定です。
SpreadsheetExample/
├─ SpreadsheetExample.csproj
├─ MainWindow.xaml
├─ MainWindow.xaml.cs
├─ App.xaml
├─ App.xaml.cs
└─ Resources/
└── Book1.xlsx 👈 このファイルを読み込んでみましょう。
XAML コード
XamSpreadsheet コントロールを XAML に追加します。以下のようなイメージです。
<Window x:Class="SpreadsheetExample.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:igSpreadsheet="http://schemas.infragistics.com/xaml"
Title="MainWindow" Height="450" Width="800">
<Grid>
<igSpreadsheet:XamSpreadsheet x:Name="xamSpreadsheet1" />
</Grid>
</Window>
C# (コードビハインド)
目的のファイルの Path で Workbook を取得して、xamSpreadsheet の Workbook に設定してあげます。
public MainWindow()
{
InitializeComponent();
LoadFile();
}
private void LoadFile()
{
// Resources フォルダ内のファイルパスを指定
string filePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Resources", "Book1.xlsx");
if (File.Exists(filePath))
{
// ワークブックを読み込みます
var workbook = Workbook.Load(filePath);
// XamSpreadsheet にワークブックを設定します
xamSpreadsheet1.Workbook = workbook;
}
else
{
MessageBox.Show("ファイルが見つかりません。");
}
}
ビルドアクションの設定
Resources フォルダに配置した Book1.xlsx ファイルがビルド時に正しくコピーされるように、Visual Studio のソリューションエクスプローラーで以下の設定を行います。
- Book1.xlsx ファイルを右クリックして「プロパティ」を選択します。
- 「ビルドアクション」を “Content” に設定します。
- 「出力ディレクトリにコピー」を “Copy if newer” または “Copy always” に設定します。
これで、プロジェクト内の xlsx ファイルを xamSpreadsheet に読み込んで表示することができるようになります。
是非お試し下さい。