設定とオプション

ReoGridはワークシートの動作を制御するための2つのメカニズムを提供します:WorksheetSettings(フラグベースのオン/オフ設定)とWorksheetOptions(値ベースの設定)です。

WorksheetSettings

メソッド

var sheet = reoGridControl.CurrentWorksheet;

// Enable a setting
sheet.EnableSettings(WorksheetSettings.Edit_Readonly);

// Disable a setting
sheet.DisableSettings(WorksheetSettings.Edit_Readonly);

// Set with explicit boolean
sheet.SetSettings(WorksheetSettings.Edit_Readonly, true);

// Check if a setting is enabled
bool isReadonly = sheet.HasSettings(WorksheetSettings.Edit_Readonly);

イベント

sheet.SettingsChanged += (s, e) =>
{
    Console.WriteLine("Settings changed");
};

動作設定

設定説明
Behavior_DoubleClickToFitRowHeightダブルクリックで行の高さを自動調整する
Behavior_DoubleClickToFitColumnWidthダブルクリックで列の幅を自動調整する
Behavior_MouseWheelToScrollマウスホイールでスクロールする
Behavior_MouseWheelToZoomCtrl+マウスホイールでズームする
Behavior_ShortcutKeyToZoomCtrl+プラス/Ctrl+マイナスでズームする
Behavior_DragToMoveCellsドラッグで選択範囲を移動またはコピーする
Behavior_DragToMoveColumnHeaderヘッダーのドラッグで列を移動する(予約済み)
Behavior_ScrollToFocusCellフォーカスセルが常に表示されるようにスクロールする
Behavior_AllowUserChangingPageBreaksマウスでページブレークを調整できるようにする

編集設定

設定説明
Edit_Readonlyワークシートを読み取り専用にする
Edit_AutoFormatCellユーザー入力後にデータを自動フォーマットする
Edit_FriendlyPercentInputパーセント書式のセル入力時に % 記号を表示する
Edit_AutoAdjustRowHeightフォントサイズが大きくなった時に行の高さを自動調整する
Edit_AllowAdjustRowHeightユーザーによる行の高さのドラッグ調整を許可する
Edit_AllowAdjustColumnWidthユーザーによる列の幅のドラッグ調整を許可する
Edit_DragSelectionToMoveCellsドラッグ&ドロップでセルの内容を移動する
Edit_DragSelectionToFillSerialドラッグで自動入力する

外観設定

設定説明
View_ShowColumnHeader列ヘッダーを表示する
View_ShowRowHeader行ヘッダーを表示する
View_ShowHorizontalRuler水平ルーラーを表示する(予約済み)
View_ShowVerticalRuler垂直ルーラーを表示する(予約済み)
View_ShowGuideLineグリッド線を表示する
View_ShowHiddenCellLine非表示の行/列のインジケーター線を表示する
View_AllowShowRowOutlines行アウトラインパネルを表示する
View_AllowShowColumnOutlines列アウトラインパネルを表示する
View_ShowPageBreaksページブレーク線を表示する
View_AllowCellTextOverflowセルテキストが隣接セルにオーバーフローすることを許可する
View_ShowPrintAreasEnable印刷範囲の境界を表示する

数式設定

設定説明
Formula_AutoUpdateReferenceCell行/列変更時に数式参照を自動更新する
Formula_AutoPickingAddress数式編集中にセルアドレスの選択を許可する
Formula_AutoFormat数式の自動修正とフォーマットを行う

WorksheetOptions

Options プロパティは、値ベースの設定による追加の設定を提供します:

var options = sheet.Options;

数式計算オプション

プロパティデフォルト説明
FormulaCalculationTimingenumAuto数式を計算するタイミング(Auto、OnDemandなど)
FormulaCalculationPrecisionenumDouble数式計算の精度

選択オプション

プロパティデフォルト説明
AlwaysMoveSelectionToUnlockedCellboolfalseワークシートがロックされている時に、ロックされていないセルに選択を自動移動する
AllowSelectCellWhenHitDropdownCellbooltrueドロップダウンセルをクリックした時にセル選択を許可する

スクロールバーオプション

プロパティデフォルト説明
AutoHideHorizontalScrollBarboolfalse不要な時に水平スクロールバーを自動非表示にする
AutoHideVerticalScrollBarboolfalse不要な時に垂直スクロールバーを自動非表示にする

非同期処理オプション

これらのオプションは、大きなワークシートの非同期セル処理を制御します:

プロパティデフォルト説明
AutoSuspendProcessesForFasterDataLoadingboolfalse一括データ読み込み中にプロセスを一時停止してパフォーマンスを向上させる
AllowAsyncProcessboolfalse非同期セル処理を有効にする
AsyncProcessDelayint非同期処理開始までの遅延(ミリ秒)
AsyncProcessIntervalTimeint非同期処理バッチ間の間隔(ミリ秒)
AsyncProcessBatchSizeintバッチごとに処理するセル数

例:大量データ向けの設定

var options = sheet.Options;

// Enable async processing for better performance with large datasets
options.AllowAsyncProcess = true;
options.AsyncProcessBatchSize = 1000;
options.AsyncProcessIntervalTime = 50;

// Suspend processes during bulk loading
options.AutoSuspendProcessesForFasterDataLoading = true;

オプションのコピーとクローン

// Copy options from another worksheet
sheet.Options.CopyFrom(otherSheet.Options);

// Clone options for a new worksheet
var newOptions = sheet.Options.Clone(newSheet);

よくある設定パターン

読み取り専用ワークシート

sheet.SetSettings(WorksheetSettings.Edit_Readonly, true);

すべてのUIクロームを非表示にする

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

ユーザーによるリサイズを無効にする

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

一括データ読み込みの最適化

sheet.Options.AutoSuspendProcessesForFasterDataLoading = true;
sheet.SuspendConditionalStyleUpdate = true;

// Load data...

sheet.SuspendConditionalStyleUpdate = false;
sheet.ApplyAllConditionalStyles();

関連トピック


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