Ejemplo n.º 1
0
        public static void SaveTableConfiguration(Table xpTable, string keyName)
        {
            try
            {
                XPTableConfiguration tableConfig = new XPTableConfiguration();

                foreach (Column col in xpTable.ColumnModel.Columns)
                {
                    XPTableColumn column = new XPTableColumn();
                    column.Width   = col.Width;
                    column.Visible = col.Visible;
                    tableConfig.TableColumns.Add(column);
                }

                if (xpTable.SortingColumn >= 0)
                {
                    tableConfig.SortColumn = xpTable.SortingColumn;
                    tableConfig.SortOrder  = (int)xpTable.ColumnModel.Columns[tableConfig.SortColumn].SortOrder;
                }

                XmlSerializer bf     = new XmlSerializer(typeof(XPTableConfiguration));
                StringWriter  stream = new StringWriter();
                bf.Serialize(stream, tableConfig);
                stream.Close();

                string xml = stream.ToString();

                using (RegistryKey regKey = Registry.CurrentUser.CreateSubKey(Settings.HitbaseRegistryKey))
                {
                    regKey.SetValue(keyName, xml);
                }
            }
            catch (Exception e)
            {
                MessageBox.Show(e.ToString(), Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }
Ejemplo n.º 2
0
        public static XPTableConfiguration LoadTableConfiguration(Table xpTable, string keyName)
        {
            try
            {
                string xml = "";
                using (RegistryKey regKey = Registry.CurrentUser.CreateSubKey(Settings.HitbaseRegistryKey))
                {
                    xml = (string)regKey.GetValue(keyName, "");
                }

                if (string.IsNullOrEmpty(xml))
                {
                    return(null);
                }

                XmlSerializer        bf          = new XmlSerializer(typeof(XPTableConfiguration));
                StringReader         xmlString   = new StringReader(xml);
                XPTableConfiguration tableConfig = (XPTableConfiguration)bf.Deserialize(xmlString);

                int index = 0;
                foreach (XPTableColumn col in tableConfig.TableColumns)
                {
                    xpTable.ColumnModel.Columns[index].Width   = col.Width;
                    xpTable.ColumnModel.Columns[index].Visible = col.Visible;

                    index++;
                }

                return(tableConfig);
            }
            catch (Exception e)
            {
                MessageBox.Show(e.ToString(), Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Information);
                return(null);
            }
        }