ワークシート

ワークシートはReoGridの主要なデータコンテナです。各ワークシートは行と列で構成されたセルのグリッドを提供し、行ヘッダーと列ヘッダーを持ちます。

216

ワークシートビューは3つのセクションで構成されます:

  • 行ヘッダービュー — 行番号を表示し、行選択を可能にします
  • 列ヘッダービュー — 列文字を表示し、列選択を可能にします
  • セルビュー — セルが表示・編集されるメインデータ領域です

ワークシートの管理

現在のワークシートを取得

var sheet = reoGridControl.CurrentWorksheet;

現在のワークシートを変更

reoGridControl.CurrentWorksheet = anotherWorksheet;

注意: CurrentWorksheetnull を設定することはできません。コントロールには常に少なくとも1つのアクティブなワークシートが必要です。

インデックスまたは名前によるアクセス

var sheet = reoGridControl.Worksheets[1];       // By index
var sheet = reoGridControl.Worksheets["Sheet2"]; // By name

ワークシートのインデックスを取得

int index = reoGridControl.GetWorksheetIndex(mysheet);

ワークシート名の変更

sheet.Name = "Sales Data";

ワークシート名は同一ワークブック内で一意でなければなりません。

タブの外観

sheet.NameBackColor = new SolidColor(Color.LightBlue);  // Tab background
sheet.NameTextColor = new SolidColor(Color.DarkBlue);    // Tab text color

作成 / 挿入 / 削除 / 移動 / コピー

ワークブック — ワークシートの管理を参照してください。

セルデータへのアクセス

方法1:ワークシートインデクサー

// Set data
sheet["A1"] = "hello world";
sheet[0, 0] = 10;

// Get data
var value = sheet["A1"];

方法2:セルインスタンス

var cell = sheet.Cells["A1"];
cell.Data = "hello world";

セルインスタンスは DataFormulaStyleBody などのプロパティを提供します。セルを参照してください。

注意: Cells[...] へのアクセスは、インスタンスが存在しない場合に新しいインスタンスを作成します。作成せずに確認するには、GetCell を使用します:

var cell = sheet.GetCell("A1");  // Returns null if cell doesn't exist

方法3:アクションの使用(元に戻す機能対応)

sheet.DoAction(new SetCellDataAction("A1", "hello world"));

主要なプロパティ

プロパティ説明
Namestringワークシート名
WorkbookIWorkbook親ワークブック
RowCount / Rowsint行数
ColumnCount / Columnsint列数
UsedRangeRangePositionデータを含む範囲(読み取り専用)
MaxContentRowintコンテンツがある最大行(読み取り専用)
MaxContentColintコンテンツがある最大列(読み取り専用)
SelectionRangeRangePosition現在の選択範囲
FocusPosCellPosition現在のフォーカスセル
ScaleFactorfloatズームレベル(1.0 = 100%)
IsFrozenboolワークシートが固定されているか(読み取り専用)
IsLockedboolワークシートがロックされているか
IsEditingboolセルが編集中か(読み取り専用)
EditingCellCell現在編集中のセル(読み取り専用)
Visibleboolワークシートが表示されているか
IndentSizefloatテキストのインデントサイズ
OptionsWorksheetOptionsワークシートオプションオブジェクト

スタイル

SetRangeStyles を使用してセルスタイルを設定します:

sheet.SetRangeStyles("A1:C3", new WorksheetRangeStyle
{
    Flag = PlainStyleFlag.TextColor,
    TextColor = Color.Green,
});

221

すべてのスタイルオプションについてはセルスタイルを参照してください。

罫線

sheet.SetRangeBorders("A1:C3", BorderPositions.InsideHorizontal,
    new RangeBorderStyle
    {
        Style = BorderLineStyle.Dashed,
        Color = Color.Pink,
    });

222

すべての罫線オプションについては罫線を参照してください。

行と列のヘッダー

行ヘッダーと列ヘッダーにアクセスします:

var rowHeader = sheet.RowHeaders[0];
var colHeader = sheet.ColumnHeaders[0];
var colHeader = sheet.ColumnHeaders["B"];

ヘッダーのカスタマイズの詳細については行、列、ヘッダーを参照してください。

ヘッダーの表示/非表示

sheet.SetSettings(WorksheetSettings.View_ShowRowHeader, false);
sheet.SetSettings(WorksheetSettings.View_ShowColumnHeader, false);

223

すべての設定については設定を参照してください。

選択の動作

選択の移動方向を変更

// Move down after Enter (instead of right)
sheet.SelectionForwardDirection = SelectionForwardDirection.Down;

選択を無効にする

sheet.SelectionMode = WorksheetSelectionMode.None;

リサイズの許可/禁止

sheet.SetSettings(WorksheetSettings.Edit_AllowAdjustRowHeight, false);
sheet.SetSettings(WorksheetSettings.Edit_AllowAdjustColumnWidth, false);

選択の包括的な管理については選択を参照してください。

印刷とエクスポート

ReoGridは印刷とエクスポート機能を提供しています:

// Export as HTML
sheet.ExportAsHTML(stream);
sheet.ExportAsHTML(stream, "Page Title", exportHeader: true);

224

印刷の詳細についてはページングと印刷を参照してください。

リセット

ワークシートをデフォルト状態にリセットします:

sheet.Reset();           // Reset with default size
sheet.Reset(500, 100);   // Reset with 500 rows and 100 columns

リセットをリッスンします:

sheet.Resetted += (s, e) => Console.WriteLine("Worksheet was reset");

破棄

ワークシートのリソースを解放します:

sheet.Dispose();

機能ガイド

機能ドキュメント
行/列の管理、ヘッダー行、列、ヘッダー
複数行の列ヘッダー複数行ヘッダー
範囲操作範囲
セルの結合セルの結合
名前付き範囲名前付き範囲
ウィンドウ枠の固定ウィンドウ枠の固定
選択とフォーカス選択
行/列のグループ化グループとアウトライン
データフィルタリングデータフィルタリング
条件付きスタイル条件付きスタイル
保護とロック保護とロック
ズームズーム
データソースバインディングデータソース
テキスト検索テキスト検索
全イベントイベント
設定とオプション設定

ページの内容は役に立ちましたか?