protected internal virtual void RaiseConvertCheckStateToEditValue(ConvertCheckStateToEditValueEventArgs e)
        {
            ConvertCheckStateToEditValueEventHandler handler = (ConvertCheckStateToEditValueEventHandler)Events[_convertCheckStateToEditValue];

            if (handler != null)
            {
                handler(GetEventSender(), e);
            }
        }
 protected override void PreQueryResultValue(QueryResultValueEventArgs e)
 {
     if (CanRaiseConvertCheckStateToEditValue)
     {
         ConvertCheckStateToEditValueEventArgs ea = new ConvertCheckStateToEditValueEventArgs(Items.Count);
         for (int i = 0; i < Items.Count; i++)
         {
             if (Items[i].CheckState == System.Windows.Forms.CheckState.Checked)
             {
                 ea.CheckedState[i] = Items[i].Enabled;
             }
         }
         RaiseConvertCheckStateToEditValue(ea);
         e.Value = ea.EditValue;
     }
 }
        void Properties_ConvertCheckStateToEditValue(object sender, ConvertCheckStateToEditValueEventArgs e)
        {
            string newValue = "";

            for (int i = 0; i < e.CheckedState.Length; i++)
            {
                if (e.CheckedState[i])
                {
                    newValue = newValue + "1";
                }
                else
                {
                    newValue = newValue + "0";
                }
            }
            e.EditValue = newValue;
        }