Esempio n. 1
0
 public static void BindControl(ICaisisInputControl control, IBusinessObject b, string fieldname)
 {
     // special case: data bound controls (select, radio list, check box list, etc... get values set late bound
     if (control is System.Web.UI.WebControls.ListControl)
     {
         var setter = new EventHandler((o, e) =>
         {
             control.Value = b[fieldname].ToString();
             if (b.IsLocked)
             {
                 control.Enabled = false;
             }
         });
         var iListControl = control as System.Web.UI.WebControls.ListControl;
         iListControl.DataBound += setter;
     }
     else
     {
         var setter = new CaisisEventHandler((o, e) =>
         {
             control.Value = b[fieldname].ToString();
             if (b.IsLocked)
             {
                 control.Enabled = false;
             }
         });
         control.PreRender += setter;
     }
     // track control change during POSTs
     control.ValueChanged += new CaisisEventHandler((o, e) => b[fieldname] = control.Value);
     // control.ValueChanged += new CaisisEventHandler((o, e) => DebugHack(o, o.Value));
 }
Esempio n. 2
0
        /// <summary>
        /// Returns a CaisisEventHandler which is used for triggering "dirty" functinality for an ICaisisInputControl
        /// </summary>
        /// <param name="srcControl"></param>
        /// <param name="updateEvent"></param>
        /// <returns></returns>
        private CaisisEventHandler GetValueChangeEventHandler(ICaisisInputControl srcControl, DxImageFindingEvent updateEvent)
        {
            CaisisEventHandler changeEvent = new CaisisEventHandler(delegate(ICaisisInputControl a, EventArgs b)
            {
                if (!fieldToUpdateMap.ContainsKey(a))
                {
                    fieldToUpdateMap.Add(a, updateEvent);
                }
            });

            return(changeEvent);
        }