Excel for Silverlight は、カンマ区切り値(CSV)ファイルの保存と読み込みをサポートします。CSV は、数値やテキストを含む表形式データを読みやすいプレーンテキスト形式で保存する一般的なファイル形式です。
次のコードは、.csv ファイルを保存する方法の例を示します。
C1.Silverlight.Excel.5.dll への参照を追加します。
標準の TextBox コントロールをページに追加し、txt_Status と名前を付けます。
Buttonコントロールをページに追加し、_btnSave と名前を付けます。
[表示]→[コード]を選択し、次のステートメントをフォームの先頭に追加します。
Import C1.Silverlight.Excel(Visual Basic)
using C1.Silverlight.Excel;(iC#)
_book という名前の新しい C1XLBookを作成し、いくつかの値を含むシートをそのブックに追加します。次のコードを使用します。
C# |
コードのコピー
|
---|---|
public partial class MainPage : UserControl { C1XLBook _book = new C1XLBook (); public MainPage() { InitializeComponent(); XLSheet sheet = _book.Sheets[0]; for (int i = 0; i <= 9; i++) { sheet[i, 0].Value = i + 1; sheet[i, 1].Value = 10 - i; } } } |
次に、ユーザーがボタンをクリックしたときにブックを CSV ファイルに保存するコードを次のように追加します。ファイルの保存中および保存の終了時に、テキストボックスにその状態が表示されます。
XAML |
コードのコピー
|
---|---|
private void _btnSave_Click(object sender, RoutedEventArgs e) { var dlg = new SaveFileDialog(); dlg.Filter = "Comma-Separated Values (*.csv)|*.csv"; if (dlg.ShowDialog().Value) { try { // 情報 txt_Status.Text = string.Format("Saving {0}...", dlg.SafeFileName); // ワークブックを保存します using (var stream = dlg.OpenFile()) { _book.Sheets[0].SaveCsv(stream); } txt_Status.Text = string.Format("Saved {0}", dlg.SafeFileName); ; } catch (Exception x) { MessageBox.Show(x.Message); } } } |
[表示]→[デザイナ]をクリックしてデザインビューに戻ります。
ボタンを選択し、Visual Studio のプロパティウィンドウで[イベント]タブをクリックします。
[クリック]イベントの横にあるドロップダウン矢印をクリックし、_btnSave_Click を選択して、追加したコードにイベントをリンクします。
[F5]キーを押してプロジェクトを実行し、ボタンをクリックします。
任意の場所にファイルを保存してから、ファイルを開きます。次の画像のようになります。