/// <summary>初期処理(Items)</summary> public void InitItems() { // マスタデータ設定 if (this.Items.Count == 0) { CmnMasterDatasForList.GetMasterData(this.MasterDataName, this.Items); } // 初期値を設定 if (this.Items.Count != 0) { this.DropDownStyle = ComboBoxStyle.DropDownList; this.SelectedIndex = 0;// Itemsの場合有効 } }
/// <summary>マスタデータ名の収集</summary> /// <param name="parentCtrl"></param> /// <param name="masterDataNames"></param> public static void GetMasterDataNames(Control parentCtrl, List <string> masterDataNames) { if (masterDataNames == null) { masterDataNames = new List <string>(); } // 対象のコントロールなら、 if (parentCtrl is WinCustomDropDownList)// || WinCustomXXXX.etc) { // 新規か? bool isNew = true; // マスタデータ名を取得 IMasterData im = (IMasterData)parentCtrl; foreach (string mdn in masterDataNames) { if (mdn == im.MasterDataName) { // 一致 → 新規でない。 isNew = false; } } // 新規か? if (isNew) { // 新規の場合は追加する。 masterDataNames.Add(im.MasterDataName); } } // コントロールを再起検索する。 foreach (Control childctrl in parentCtrl.Controls) { CmnMasterDatasForList.GetMasterDataNames(childctrl, masterDataNames); } }