//──────────────────────────────────────── public Usercontrol Perform( Expression_Node_StringImpl ec_FcName, MemoryApplication moApplication ) { UsercontrolListbox uctLst = new UsercontrolListbox(); // 名前だけ初期設定 uctLst.Expression_Name_Control = ec_FcName; uctLst.ControlCommon.Owner_MemoryApplication = moApplication; // // 項目に色を付けるなどの機能に、変更。 // { uctLst.ListboxItemDrawer = new ListboxItemDrawer_03Impl(moApplication); // リストボックスの表示を自作します。項目の高さが固定の場合。 uctLst.DrawMode = DrawMode.OwnerDrawFixed; } return uctLst; }
//──────────────────────────────────────── public Usercontrol Perform( Expression_Node_StringImpl ec_Name_Control, MemoryApplication owner_MemoryApplication ) { UsercontrolListbox uctLst = new UsercontrolListbox(); // 名前だけ初期設定 uctLst.Expression_Name_Control = ec_Name_Control; uctLst.ControlCommon.Owner_MemoryApplication = owner_MemoryApplication; // E_Action08、E_Action26 の内容をここに移動。 { // 動作 uctLst.ListboxItemDrawer = new ListboxItemDrawer_01Impl(owner_MemoryApplication); // リストボックスの表示を自作します。項目の高さが固定の場合。 uctLst.DrawMode = DrawMode.OwnerDrawFixed; } return uctLst; }
/// <summary> /// コンストラクター /// </summary> /// <param name="listBox"></param> public OperatorOfListbox(UsercontrolListbox usercontrolListbox) : base() { this.listboxWrapper = new ListboxWrapperImpl(usercontrolListbox); }
//──────────────────────────────────────── public void Translate( Configurationtree_Node cur_Cf, Expressionv_3FListboxValidationImpl parent_Exprv, UsercontrolListbox uctLst, MemoryApplication memoryApplication, Log_TextIndented_ConfigurationtreeToExpression pg_ParsingLog, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_ConfigurationtreeToExpression.Name_Library, this, "SToE",log_Reports); if (log_Method.CanDebug(1)) { pg_ParsingLog.Increment("(35)" + cur_Cf.Name); } // // string err_Child_SName_Node = ""; string err_Parent_SName_Node = ""; Configurationtree_Node err_Child_CfNode = null; // // // // 自 // // // Expressionv_4ADisplayImpl cur_Exprv = new Expressionv_4ADisplayImpl(parent_Exprv, cur_Cf, memoryApplication); // // // // 属性 // // // { { PmName pmName = PmNames.S_TYPE; string sValue; bool bHit = cur_Cf.Dictionary_Attribute.TryGetValue(pmName, out sValue, false, log_Reports); if (bHit) { cur_Exprv.Dictionary_SAttribute.Add(pmName.Name_Pm, sValue); } } { PmName pmName = PmNames.S_DESCRIPTION; string sValue; bool bHit = cur_Cf.Dictionary_Attribute.TryGetValue(pmName, out sValue, false, log_Reports); if (bHit) { cur_Exprv.Dictionary_SAttribute.Add(pmName.Name_Pm, sValue); } } } parent_Exprv.List_Expressionv_ADisplay.Add(cur_Exprv); uctLst.AddValidator_FListboxForItems(parent_Exprv, log_Reports); // #デバッグ中 if (log_Method.CanDebug(1)) { log_Method.WriteDebug_ToConsole(" 子<f-●●>数=[" + cur_Cf.List_Child.Count + "]"); } // // // // 子 // // // cur_Cf.List_Child.ForEach(delegate(Configurationtree_Node child_Cf, ref bool bBreak) { if (child_Cf is Configurationtree_Node) { Configurationtree_Node child_Configurationtree_Node = (Configurationtree_Node)child_Cf; string sName_Fnc; child_Configurationtree_Node.Dictionary_Attribute.TryGetValue(PmNames.S_NAME, out sName_Fnc, false, log_Reports); if (NamesFnc.S_VLD_ALL_FIELDS_IS_EMPTY == sName_Fnc) { // // <f-all-fields-is-empty>要素 ConfigurationtreeToExpression_V54_FAllFieldsIsEmptyImpl_ to = new ConfigurationtreeToExpression_V54_FAllFieldsIsEmptyImpl_(); to.Translate( child_Configurationtree_Node, cur_Exprv, memoryApplication, pg_ParsingLog, log_Reports ); } else if (NamesFnc.S_ALL_TRUE == sName_Fnc) { // // <f-all-true>要素 ConfigurationtreeToExpression_V54_FAllTrueImpl_ to = new ConfigurationtreeToExpression_V54_FAllTrueImpl_(); to.Translate( child_Configurationtree_Node, cur_Exprv, memoryApplication, pg_ParsingLog, log_Reports ); } else { // // エラー。 err_Child_SName_Node = child_Configurationtree_Node.Name; err_Parent_SName_Node = cur_Cf.Name; err_Child_CfNode = child_Configurationtree_Node; bBreak = true; } } }); if (null != err_Child_SName_Node) { goto undefined_element; } goto gt_EndMethod; // // #region 異常系 //──────────────────────────────────────── undefined_element: { Builder_TexttemplateP1p tmpl = new Builder_TexttemplateP1pImpl(); tmpl.SetParameter(1, err_Child_SName_Node, log_Reports);//子設定ノード名 tmpl.SetParameter(2, err_Parent_SName_Node, log_Reports);//親設定ノード名 tmpl.SetParameter(3, Log_RecordReportsImpl.ToText_Configuration(err_Child_CfNode), log_Reports);//設定位置パンくずリスト memoryApplication.CreateErrorReport("Er:7020;", tmpl, log_Reports); } goto gt_EndMethod; //──────────────────────────────────────── #endregion // // gt_EndMethod: if (Log_ReportsImpl.BDebugmode_Static) { pg_ParsingLog.Decrement(cur_Cf.Name); } log_Method.EndMethod(log_Reports); }
public ListboxWrapperImpl(UsercontrolListbox uctLst) { this.usercontrolListbox1 = uctLst; }
//──────────────────────────────────────── public void Translate( Configurationtree_Node cur_Conf,//Sv_3FListboxValidation UsercontrolListbox uctLst, MemoryApplication memoryApplication, Log_TextIndented_ConfigurationtreeToExpression pg_ParsingLog, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_ConfigurationtreeToExpression.Name_Library, this, "SToE",log_Reports); if (log_Method.CanDebug(1)) { pg_ParsingLog.Increment("(34)" + cur_Conf.Name); } // // // バリデーター設定要素 Configurationtree_Node cf_ValidatorConfig; { List<Configurationtree_Node> cfList_ValidatorConfig = uctLst.ControlCommon.Configurationtree_Control.GetChildrenByNodename(NamesNode.S_CODEFILE_VALIDATORS, false, log_Reports); if (1 < cfList_ValidatorConfig.Count) { throw new Exception("バリデーター設定要素が2つ以上ありました。"); } else if (0 < cfList_ValidatorConfig.Count) { cf_ValidatorConfig = cfList_ValidatorConfig[0]; } else { cf_ValidatorConfig = null; } } // // // // 自 // // // Expressionv_3FListboxValidationImpl cur_Exprv = new Expressionv_3FListboxValidationImpl(null, cf_ValidatorConfig, memoryApplication); // // // // 子 // // // List<Configurationtree_Node> cfList_Fnc = cur_Conf.GetChildrenByNodename(NamesNode.S_FNC, false, log_Reports); // #デバッグ中 //d_InMethod.WriteDebug_ToConsole(1, " <a-display>数=[" + sv_Cur.Sv_ADisplayList.Count + "]"); //d_InMethod.WriteDebug_ToConsole(1, " <fnc name=”a-record-set-save-to”>数=[" + sv_Cur.Sv_ASelectRecordList.Count + "]"); foreach (Configurationtree_Node child_Cf in cfList_Fnc) { string sName_Fnc; child_Cf.Dictionary_Attribute.TryGetValue(PmNames.S_NAME, out sName_Fnc, true, log_Reports); if (NamesFnc.S_VLD_SELECT_RECORD == sName_Fnc) { ConfigurationtreeToExpression_V53_ASelectRecordImpl_ to = new ConfigurationtreeToExpression_V53_ASelectRecordImpl_(); to.Translate( child_Cf, cur_Exprv, memoryApplication, pg_ParsingLog, log_Reports ); } else if (NamesFnc.S_VLD_DISPLAY == sName_Fnc) { // <a-display>要素 ConfigurationtreeToExpression_V53_ADisplayImpl_ to = new ConfigurationtreeToExpression_V53_ADisplayImpl_(); to.Translate( child_Cf, cur_Exprv, uctLst, memoryApplication, pg_ParsingLog, log_Reports ); } else { log_Method.WriteError_ToConsole("未実装です。"); throw new Exception("未実装です。"); } } goto gt_EndMethod; // // // // gt_EndMethod: if (Log_ReportsImpl.BDebugmode_Static) { pg_ParsingLog.Decrement(cur_Conf.Name); } log_Method.EndMethod(log_Reports); }