DevExpressのサポートスタッフの助けを借りて、私が望むことを行う方法を記述したthis articleが見つかりました。
グリッドの名前を使用してレイアウトを保存および復元する、以下の拡張メソッドで次のレベルにしました。
public static class GridSettingsExtension
{
private const string layoutFolderName = "dxGridLayout";
private static readonly Func<GridControl, string> gridLayoutFile = g => g.Name + ".xml";
public static bool IsLayoutSaved(this GridControl gridControl) {
var file = IsolatedStorageFile.GetUserStoreForApplication();
var fullPath = Path.Combine(layoutFolderName, gridLayoutFile(gridControl));
return file.FileExists(fullPath);
}
public static void SaveLayoutToIsolatedStorage(this GridControl gridControl) {
var file = IsolatedStorageFile.GetUserStoreForApplication();
if(!file.DirectoryExists(layoutFolderName)) {
file.CreateDirectory(layoutFolderName);
}
string fullPath = Path.Combine(layoutFolderName, gridLayoutFile(gridControl));
using(var fs = file.CreateFile(fullPath)) {
gridControl.SaveLayoutToStream(fs);
}
}
public static void RestoreLayoutFromIsolatedStorage(this GridControl gridControl) {
var file = IsolatedStorageFile.GetUserStoreForApplication();
var fullPath = Path.Combine(layoutFolderName, gridLayoutFile(gridControl));
using(var fs = file.OpenFile(fullPath, FileMode.Open, FileAccess.Read)) {
gridControl.RestoreLayoutFromStream(fs);
}
}
}
:ここ
gridControl.SaveLayoutToIsolatedStorage();
gridControl.RestoreLayoutFromIsolatedStorage();
コードです:私は、私が望んでいた電話をかけることができ
出典
2011-07-21 15:24:59
Dov