Esempio n. 1
0
        private void btnShowControlName_Click(object sender, EventArgs e)
        {
            string name = this.txtControlName.Text.Trim();

            if (name.Length == 0)
            {
                MessageBoxHelper.Show("请输入控件类名!");
                this.txtControlName.Focus();
                return;
            }
            this.SetResultTitle("显示类名为" + name + "所有的子控件Name结果为:");
            try
            {
                Control ctr = ReflectHelper.CreateInstance(name) as Control;
                if (ctr != null)
                {
                    this.ShowName(ctr);
                }
                else
                {
                    this.txtResult.AppendText("\r\n类名不是正确的控件类型!");
                }
            }
            catch (Exception ex)
            {
                this.txtResult.AppendText("\r\n异常:" + ex.Message);
            }
        }
Esempio n. 2
0
        private void btnCreateInstance_Click(object sender, EventArgs e)
        {
            string name = this.txtReflectClass.Text.Trim();

            if (name.Length == 0)
            {
                MessageBoxHelper.Show("请输入类名!");
                this.txtReflectClass.Focus();
                return;
            }
            this.SetResultTitle("反射类名为" + name + "结果为:");
            try
            {
                object obj = ReflectHelper.CreateInstance(name);
                if (obj != null)
                {
                    this.txtResult.AppendText("\r\n反射成功!");
                }
                else
                {
                    this.txtResult.AppendText("\r\n反射结果为空,在Domain中未找到类型!");
                }
            }
            catch (Exception ex)
            {
                this.txtResult.AppendText("\r\n反射异常:" + ex.Message);
            }
        }
Esempio n. 3
0
        protected override void AfterSuccessUpdate()
        {
            base.AfterSuccessUpdate();
            string typename = this.cbClassCnName.SelectedValue.ToString();
            object obj      = ReflectHelper.CreateInstance(typename);

            FT.DAL.Orm.SimpleOrmCache.RefreshTemplateSql(obj.GetType());
        }
Esempio n. 4
0
        private void btnBegin_Click(object sender, EventArgs e)
        {
            CatcherConfig config  = StaticCacheManager.GetConfig <CatcherConfig>();
            object        obj     = ReflectHelper.CreateInstance(config.CatcherClassName);
            ICatcher      catcher = obj as ICatcher;

            catcher.Parse();
        }
Esempio n. 5
0
 /// <summary>
 /// 点击弹出一个窗体类型
 /// </summary>
 /// <param name="type"></param>
 protected void ShowWindowDialog(Type type)
 {
     if (type.BaseType == typeof(Form))
     {
         Form form = ReflectHelper.CreateInstance(type) as Form;
         form.ShowInTaskbar = false;
         form.StartPosition = FormStartPosition.CenterScreen;
         form.ShowDialog();
     }
 }
Esempio n. 6
0
        private void btnGenerateColumnDefine_Click(object sender, EventArgs e)
        {
            string fullname = this.txtClassFullName.Text.Trim();
            object obj      = ReflectHelper.CreateInstance(fullname);

            if (obj == null)
            {
                MessageBoxHelper.Show("不存在该类型!");
                return;
            }
            Type type = obj.GetType();

            if (type == null)
            {
            }
            else
            {
                DataTable dt = FT.DAL.Orm.SimpleOrmCache.GetConditionDT(type);
                if (dt != null)
                {
                    string cn = this.txtClassCnName.Text.Trim();
                    FT.DAL.DataAccessFactory.GetDataAccess().ExecuteSql("delete from table_entity_column_define where c_class_full_name='" +
                                                                        FT.DAL.DALSecurityTool.TransferInsertField(fullname) + "'");
                    EntityColumnDefine column = new EntityColumnDefine();
                    int i = 1;
                    foreach (DataRow dr in dt.Rows)
                    {
                        column.ClassCnName   = cn;
                        column.ExportWidth   = 10;
                        column.HeaderName    = dr["text"].ToString();
                        column.HeaderWidth   = 80;
                        column.IsExportExcel = true;
                        column.IsPrinted     = true;
                        column.OrderNum      = i;
                        column.ColumnName    = dr["value"].ToString();
                        column.PrintedWidth  = 80;
                        column.PropertyName  = column.HeaderName;
                        column.ShowInDetail  = true;
                        column.DetailWidth   = 80;
                        column.ClassFullName = fullname;
                        FT.DAL.Orm.SimpleOrmOperator.Create(column);
                        //column.s
                        i++;
                    }
                    MessageBoxHelper.Show("创建成功,共" + i + "个列!");
                }
            }
        }
Esempio n. 7
0
        private static void Run(Image bg, string text, Type panelType, string panelText)
        {
            Welcome welcome = new Welcome();

            welcome.ShowInTaskbar = false;
            if (bg != null)
            {
                welcome.BackgroundImage = bg;
            }
            welcome.Show();
            Form form = new FT.Windows.Forms.LoginForm();

            if (form.ShowDialog() == DialogResult.OK)
            {
                welcome.Close();
                FT.Windows.Forms.BaseMainForm main = new FT.Windows.Forms.BaseMainForm();
                main.Text = text;
                if (bg != null)
                {
                    TabPage tb = new TabPage("欢迎您   ");
                    tb.BackgroundImage       = bg;
                    tb.BackgroundImageLayout = ImageLayout.Stretch;
                    main.GetSimpleTabControl().TabPages.Add(tb);
                }
                if (panelType != null)
                {
                    TabPage tb       = new TabPage(panelText + "   ");
                    object  paneltmp = ReflectHelper.CreateInstance(panelType);
                    if ((typeof(UserControl)).IsAssignableFrom(paneltmp.GetType()))
                    {
                        Control panel = (Control)paneltmp;
                        panel.Dock = DockStyle.Fill;
                        tb.Controls.Add(panel);
                    }
                    main.GetSimpleTabControl().TabPages.Add(tb);
                    if (main.GetSimpleTabControl().TabPages.Count > 0)
                    {
                        main.GetSimpleTabControl().SelectedIndex = main.GetSimpleTabControl().TabPages.Count - 1;
                    }
                }
                Application.Run(main);
            }
            else
            {
                welcome.Close();
            }
        }
Esempio n. 8
0
        /// <summary>
        /// 根据datarow创建一个对象出来
        /// </summary>
        /// <typeparam name="T">泛型</typeparam>
        /// <param name="dr">datarow</param>
        /// <returns>创建一个对象</returns>
        private static object CreateFromDataRow(Type type, DataRow dr)
        {
            object    result = ReflectHelper.CreateInstance(type);
            Hashtable table  = SimpleOrmCache.GetSelectField(type);

            System.Collections.IDictionaryEnumerator enumerator = table.GetEnumerator();
            object    drvalue   = null;
            FieldInfo fieldInfo = null;

            while (enumerator.MoveNext())
            {
                drvalue   = dr[enumerator.Key.ToString()];
                fieldInfo = result.GetType().GetField(enumerator.Value.ToString(), BindingFlags.IgnoreCase | BindingFlags.NonPublic | BindingFlags.FlattenHierarchy | BindingFlags.Public | BindingFlags.Instance);
                SetValueToField(result, fieldInfo, drvalue);
            }
            return(result);
        }
Esempio n. 9
0
        void item_Click(object sender, EventArgs e)
        {
            // MessageBoxHelper.Show("点击菜单!");
            //Console.WriteLine("点击菜单!");
            ToolStripItem item = sender as ToolStripItem;

            if (item != null)
            {
                //Console.WriteLine("form 为:"+form);
                object paneltmp = ReflectHelper.CreateInstance(item.Tag.ToString());
                if ((typeof(Form)).IsAssignableFrom(paneltmp.GetType()))
                {
                    Form form = paneltmp as Form;
                    form.ShowInTaskbar = false;
                    form.StartPosition = FormStartPosition.CenterScreen;
                    //form.MdiParent = this.form;
                    //form.IsMdiChild = true;
                    form.ShowDialog();
                }
                else
                {
                    int count = this.form.GetSimpleTabControl().TabPages.Count;
                    for (int i = 0; i < count; i++)
                    {
                        if (this.form.GetSimpleTabControl().TabPages[i].Text.StartsWith(item.Text))
                        {
                            this.form.GetSimpleTabControl().SelectedIndex = i;
                            //tab.Select();
                            // tab.Focus();
                            return;
                        }
                    }
                    this.form.GetSimpleTabControl().TabPages.Add(item.Text + "    ");
                    //TabPage tb = new TabPage();
                    //this.form.GetSimpleTabControl().TabPages.Add(tb);
                    TabPage tb = this.form.GetSimpleTabControl().TabPages[this.form.GetSimpleTabControl().TabPages.Count - 1];

                    //object paneltmp = ReflectHelper.CreateInstance(typeof(FT.Lottery.LotteryParse));
                    Control panel = (Control)paneltmp;
                    panel.Dock = DockStyle.Fill;
                    tb.Controls.Add(panel);
                    this.form.GetSimpleTabControl().SelectedIndex = this.form.GetSimpleTabControl().TabCount - 1;
                }
            }
        }
Esempio n. 10
0
        private void button2_Click(object sender, EventArgs e)
        {
            string entity = this.txtTableName.Text.Trim();

            if (entity.Length > 0)
            {
                //Type type = Type.GetType(entity,false,true);
                object obj = ReflectHelper.CreateInstance(entity);
                if (obj != null)
                {
                    Type type = obj.GetType();
                    if (type != null)
                    {
                        bool result = FT.DAL.Orm.SimpleOrmOperator.DropTable(type);
                        MessageBoxHelper.Show("删除表结果:" + result);
                    }
                }
                else
                {
                    MessageBoxHelper.Show("未找到类型:" + entity);
                }
            }
        }
Esempio n. 11
0
        private void button3_Click(object sender, EventArgs e)
        {
            object obj = ReflectHelper.CreateInstance("FT.Lottery.LotteryPersonalResult");

            Console.WriteLine("创建反射Assembly中类型的结果为:" + obj);
        }