コード例 #1
0
        private void OnRaiseView <T>(object sender, DataGridView dataGrdView, ReportConfigManagerBase <T> configMgr, string typeProfix) where T : IReportItem, new()
        {
            try
            {
                Button button = sender as Button;
                T      target = default(T);
                if (button.Text == "Add")
                {
                    target = new T();
                }
                else
                {
                    target = (T)dataGrdView.CurrentRow.DataBoundItem;
                }

                this.OpenView <T>(sender, new CommandArgs <T>()
                {
                    MainView   = this,
                    Target     = target,
                    TypeProfix = typeProfix
                }, configMgr);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
コード例 #2
0
        private void OpenView <T>(object sender, CommandArgs <T> e, ReportConfigManagerBase <T> configMgr) where T : IReportItem
        {
            Type          viewType = System.Reflection.Assembly.GetExecutingAssembly().GetType("QlikView.Configuration." + e.TypeProfix + "View");
            IBaseView <T> view     = Activator.CreateInstance(viewType) as IBaseView <T>;

            view.Item = e.Target;

            GeneralPresenter <T> presenter = new GeneralPresenter <T>();

            presenter.MainView      = e.MainView;
            presenter.View          = view;
            presenter.ConfigManager = configMgr;

            presenter.Run();
        }
コード例 #3
0
        private void ExecuteDelete <T>(DataGridViewRow currentRow, ReportConfigManagerBase <T> mgr) where T : IReportItem
        {
            if (this.ComfirmDeleteItem(currentRow))
            {
                T item = (T)currentRow.DataBoundItem;

                IError error = mgr.RemoveItem(item.Name);
                if (error.HasError)
                {
                    MessageBox.Show("Can not remove the item. \n" + error.ErrorMessage);
                }
                else
                {
                    this.RefreshUI();
                }
            }
        }