コード例 #1
0
        private void LoadScreenDetailList(string screenCD, string langCD, string keyFilter)
        {
            try
            {
                ScreenDetailMaintenanceController ctlScreenDetail = new ScreenDetailMaintenanceController();
                //ScreenDetailMaintenanceUIDM uidmScreenDetail = new ScreenDetailMaintenanceUIDM();

                DataTable dt     = ctlScreenDetail.LoadScreenDetailWithOriginalCaptionByLangCD(screenCD, langCD);
                DataTable dtView = dt.Clone();

                if (keyFilter != string.Empty)
                {
                    //get only the rows you want
                    DataRow[] results = dt.Select(string.Format("CONTROL_CAPTION LIKE '%{0}%'", keyFilter));

                    //populate new destination table
                    foreach (DataRow dr in results)
                    {
                        dtView.ImportRow(dr);
                    }
                }
                else
                {
                    foreach (DataRow dr in dt.Rows)
                    {
                        dtView.ImportRow(dr);
                    }
                }
                fpScreenDetailList.DataSource = dtView;

                shtScreenDetailList.Columns[(int)eColScreenDetail.ORIGINAL_CAPTION].Locked = true;
                shtScreenDetailList.Columns[(int)eColScreenDetail.DISPLAY_CAPTION].Locked  = false;
            }
            catch (ValidateException err)
            {
                for (int i = 0; i < err.ErrorResults.Count; i++)
                {
                    MessageBox.Show(err.ErrorResults[i].Message.MessageDescription);
                    err.ErrorResults[i].FocusOnControl();
                }
            }
            catch (BusinessException err)
            {
                MessageDialog.ShowBusiness(this, err.Error.Message.MessageDescription);
            }
            catch (Exception ex)
            {
                MessageDialog.ShowBusiness(this, ex.Message);
            }
        }