Mega Code Archive

 
Categories / C# Tutorial / GUI Windows Forms
 

Extends ISupportInitialize

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms;    public class Form1     {       static void Main()       {          BindingSource bindSource = new BindingSource();          MyClass dataContainer = new MyClass();          ISupportInitialize bindSourceInit = bindSource;          ISupportInitialize dataInit = dataContainer;          bindSourceInit.BeginInit();          dataInit.BeginInit();          dataContainer.StringCollection = new List<string>();          bindSource.DataSource = dataContainer;          bindSource.DataMember = "StringCollection";          bindSourceInit.EndInit();          dataInit.EndInit();       }           }    public class MyClass : ISupportInitialize    {       private List<string> m_Data = null;       private bool m_Initializing = false;       private List<string> m_TempData = null;       public List<string> StringCollection       {          get          {             return m_Data;          }          set          {             if (m_Initializing)                m_TempData = value;             else                m_Data = value;          }       }       void ISupportInitialize.BeginInit()       {          m_Initializing = true;       }       void ISupportInitialize.EndInit()       {          m_Data = m_TempData;          m_Initializing = false;       }    }