Mini Kabibi Habibi

Current Path : C:/Users/Public/Documents/DXperience 13.1 Demos/WinForms/CS/XpoTutorials/Images/
Upload File :
Current File : C:/Users/Public/Documents/DXperience 13.1 Demos/WinForms/CS/XpoTutorials/Images/Images.cs

using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using DevExpress.Xpo.DB;
using System.IO;

namespace DevExpress.Xpo.Demos {
    public partial class Images : TutorialControl {
        string originDBFileName;
        string xpoDBFileName;
        InMemoryDataStore inMemory;
        public Images() {
            inMemory = new InMemoryDataStore(AutoCreateOption.DatabaseAndSchema);
            IDataLayer dl = new SimpleDataLayer(inMemory);
            XpoDefault.DataLayer = dl;
            originDBFileName = DevExpress.Utils.FilesHelper.FindingFileName(Application.StartupPath, "Data\\cars.xml");
            if(!string.IsNullOrEmpty(originDBFileName)) {
                xpoDBFileName = Path.Combine(Path.GetDirectoryName(originDBFileName), Path.GetFileNameWithoutExtension(originDBFileName) + "Xpo.xml");
                if(File.Exists(xpoDBFileName)) {
                    inMemory.ReadXml(xpoDBFileName);
                } else {
                    inMemory.ReadXml(originDBFileName);
                }
            }
            InitializeComponent();
            unitOfWork1.Connect(dl);
        }
        public override bool SetNewWhatsThisPadding { get { return true; } }
        private void Images_Load(object sender, System.EventArgs e) {
            xpCars.LoadingEnabled = true;
            xpCars.Reload();
        }

        private void bSave_Click(object sender, System.EventArgs e) {
            SaveChanges(unitOfWork1);
            if(!string.IsNullOrEmpty(xpoDBFileName)){
                inMemory.WriteXml(xpoDBFileName);
            }
        }

        public override void ReloadData() {
            xpCars.Reload();
        }
    }
}