コード例 #1
0
        private void FocusListener_AddingChildControl(object sender, ChildControlListAddingEventArgs e)
        {
            Control c = e.Control;

            try
            {
                // 只有支持Tab获取焦点的控件才可以使用自带的焦点事件
                // 其他的需要使用别的事件替代(单击事件)
                if (c.TabStop)
                {
                    c.GotFocus  += ChildControl_GotFocus;
                    c.LostFocus += ChildControl_LostFocus;
                }
                else
                {
                    // 是否允许使用Click获取焦点
                    if (AllowUseClickEvent)
                    {
                        c.Click += ChildControl_GotFocus;

                        c.Click += (s, args) =>
                        {
                            c.Focus();
                        };
                    }
                }
            }
            catch { }
        }
コード例 #2
0
 private void BackColorSupport_AddingChildControl(object sender, ChildControlListAddingEventArgs e)
 {
     try
     {
         if (TargetTypes == null)
         {
             // 如果控件的类型存在于过滤表中,则忽略
             if (FiltrateTypes.Contains(e.Control.GetType()))
             {
                 e.IsCancel = true;
                 return;
             }
             else
             {
                 // 给控件赋予事件
                 AddEvents(e.Control);
             }
         }
         else
         {
             if (TargetTypes.Contains(e.Control.GetType()))
             {
                 // 给控件赋予事件
                 AddEvents(e.Control);
             }
             else
             {
                 e.IsCancel = true;
                 return;
             }
         }
     }
     catch { }
 }