DevExpress控件GridControl中的布局詳解 【轉】??
2012-10-24 13:27:28|??分類:?devexpress?|??標簽:devexpress??|舉報|字號?訂閱
http://www.cnblogs.com/martintuan/archive/2011/03/05/1971472.html
?
?
?
進行DevExpress控件GridControl的使用時,因控件的靈活性,所以用戶會經常進行拖動控件的列,以達到自己滿意的樣式,
但下次再打開時系統就會重新還原到原有的布局風格,為了能夠保持用戶之前設置的風格,下次再打開時依然保持原有的風格。
在gridView中有兩個方法:SaveLayoutToXml(保存布局),RestoreLayoutFromXml(恢復布局)
?以下是具體的代碼:

private string systempath = "C:\\Program Files\\";
///<summary>
/// 保存風格
///</summary>
///<param name="moduleid"></param>
///<param name="saveType"></param>
private void SaveLayout(string moduleid, string saveType)
{
string path = systempath + "窗體風格\\" + moduleid+"\\";
string file = saveType + "view.xml";
if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
m_gridView.SaveLayoutToXml(path+file);
}
///<summary>
/// 加載風格
///</summary>
///<param name="moduleid"></param>
///<param name="saveType"></param>
private void LoadLayout(string moduleid, string saveType)
{
string path = systempath + "窗體風格\\" + moduleid + "\\";
string file = saveType + "view.xml";
if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
if (!File.Exists(path + file))
return;
m_gridView.RestoreLayoutFromXml(path + file);
}
///<summary>
/// 布局變化時產生事件
///</summary>
///<param name="sender"></param>
///<param name="e"></param>
private void m_gridView_Layout(object sender, EventArgs e)
{
SaveLayout(m_controlManager.Owner.ModuleId, "Master");
}
///<summary>
/// gridcontrol load Event
///</summary>
///<param name="sender">The source of the event.</param>
///<param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param>
private void m_gridControl_Load(object sender, EventArgs e)
{
SaveLayout(m_controlManager.Owner.ModuleId, "Default");
LoadLayout(m_controlManager.Owner.ModuleId, "Master");
}