//──────────────────────────────────────── #endregion #region アクション //──────────────────────────────────────── /// <summary> /// 実行。 /// /// 指定のコントロールの、指定のイベントを実行します。 /// /// todo:どこで利用されている? /// </summary> /// <param name="sender"></param> /// <param name="nFcName">コントロール名。</param> /// <param name="oEventName"></param> /// <param name="log_Reports"></param> public void Execute1_Usercontrol( object sender, Expression_Node_String ec_FcName, XenonName o_Name_Event, MemoryApplication owner_MemoryApplication, Log_Reports log_Reports ) { //.WriteLine(this.GetType().Name + "#PerformFc: 【アクション_パフォーマー開始】"); Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_Functions.Name_Library, this, "Execute1_Usercontrol", log_Reports); // // Usercontrol ucFc = null; string sFcName1 = ec_FcName.Execute4_OnExpressionString(EnumHitcount.Unconstraint, log_Reports); owner_MemoryApplication.MemoryForms.ForEach_Children(delegate(string sKey, Usercontrol ucFc2, ref bool bRemove, ref bool bBreak) { string sFcName2 = ucFc2.ControlCommon.Expression_Name_Control.Execute4_OnExpressionString(EnumHitcount.Unconstraint, log_Reports); if (sFcName2 == sFcName1) { ucFc = ucFc2; } }); if (null != ucFc) { // 一致したfcUcがあれば、一致した最後のfcUcを。 this.Execute1_UsercontrolImpl( sender, ucFc, o_Name_Event, owner_MemoryApplication, log_Reports ); } else { // // // //.WriteLine(this.GetType().Name + "#PerformFc: ■[" + sFcName_prm + "]という名前のコントロールはありませんでした。"); } // // log_Method.EndMethod(log_Reports); //.WriteLine(this.GetType().Name + "#PerformFc: 【アクション_パフォーマー終了】"); }
//──────────────────────────────────────── /// <summary> /// 実行。 /// /// 全てのコントロールの、指定のイベントを実行します。 /// /// アプリケーション起動時に、"OnLoad"を全て実行するなど。 /// /// 別の関数から呼び出されます。 /// </summary> /// <param name="oEventName"></param> /// <param name="oEventName"></param> /// <param name="log_Reports"></param> public void Execute1_AllUsercontrols( List <string> sFcNameList, object sender, XenonName o_Name_Event, MemoryApplication owner_MemoryApplication, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_Functions.Name_Library, this, "Execute1_AllUsercontrols", log_Reports); // // Configurationtree_Node cf_ThisMethod = new Configurationtree_NodeImpl(log_Method.Fullname, null); foreach (string sName_Usercontrol in sFcNameList) { if ("" == sName_Usercontrol) { // 空行。飛ばす。 goto end_row; } Expression_Leaf_StringImpl ec_FcName = new Expression_Leaf_StringImpl(null, cf_ThisMethod); ec_FcName.SetString(sName_Usercontrol, log_Reports); List <Usercontrol> list_UcFc = owner_MemoryApplication.MemoryForms.GetUsercontrolsByName(ec_FcName, true, log_Reports); if (list_UcFc.Count < 1) { // 正常。 // 特に設定をすることのないコントロールは、XMLファイルが用意されていない。 // 無視する。 } else { Usercontrol ucFc = list_UcFc[0]; this.Execute1_UsercontrolImpl( sender, ucFc, o_Name_Event, owner_MemoryApplication, log_Reports ); } end_row: ; } // // log_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── /// <summary> /// 実行。 /// /// 全てのコントロールの、指定のイベントを実行します。 /// /// アプリケーション起動時に、"OnLoad"を全て実行するなど。 /// /// 別の関数から呼び出されます。 /// </summary> /// <param name="oEventName"></param> /// <param name="oEventName"></param> /// <param name="log_Reports"></param> public void Execute1_AllUsercontrols( List<string> sFcNameList, object sender, XenonName o_Name_Event, MemoryApplication owner_MemoryApplication, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_Functions.Name_Library, this, "Execute1_AllUsercontrols", log_Reports); // // Configurationtree_Node cf_ThisMethod = new Configurationtree_NodeImpl(log_Method.Fullname, null); foreach (string sName_Usercontrol in sFcNameList) { if ("" == sName_Usercontrol) { // 空行。飛ばす。 goto end_row; } Expression_Leaf_StringImpl ec_FcName = new Expression_Leaf_StringImpl(null, cf_ThisMethod); ec_FcName.SetString( sName_Usercontrol, log_Reports); List<Usercontrol> list_UcFc = owner_MemoryApplication.MemoryForms.GetUsercontrolsByName(ec_FcName, true, log_Reports); if (list_UcFc.Count < 1) { // 正常。 // 特に設定をすることのないコントロールは、XMLファイルが用意されていない。 // 無視する。 } else { Usercontrol ucFc = list_UcFc[0]; this.Execute1_UsercontrolImpl( sender, ucFc, o_Name_Event, owner_MemoryApplication, log_Reports ); } end_row: ; } // // log_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── /// <summary> /// 実行。 /// /// コントロールの名前数文字を指定して、一致するコントロールのイベントを実行します。 /// /// todo:どこから呼び出されている? /// </summary> /// <param name="oEventName"></param> /// <param name="oEventName"></param> /// <param name="log_Reports"></param> public void Execute1_UsercontrolNameStartsWith( object sender, string sFcNameStarts, XenonName o_Name_Event, MemoryApplication owner_MemoryApplication, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_Functions.Name_Library, this, "Execute1_UsercontrolNameStartsWith", log_Reports); // // Dictionary <string, Usercontrol> dic = owner_MemoryApplication.MemoryForms.ItemsStartsWith( sFcNameStarts, log_Reports ); foreach (Usercontrol ucFc in dic.Values) { if (null != ucFc) { this.Execute1_UsercontrolImpl( sender, ucFc, o_Name_Event, owner_MemoryApplication, log_Reports ); } else { // // // //string sFcName3 = ucFc.ControlCommon.Expression_Name_Control.E_Execute(log_Reports); //.WriteLine(this.GetType().Name + "#Perform_FcNameStartsWith: ■[" + sFcName_prm + "]という名前のコントロールはありませんでした。"); } } // // log_Method.EndMethod(log_Reports); //.WriteLine(this.GetType().Name + "#Perform_FcNameStartsWith: 【アクション_パフォーマー終了】"); }
//──────────────────────────────────────── /// <summary> /// 文字列型変数の値をセットします。 /// </summary> /// <param select="oVariableName"></param> /// <param select="nValue"></param> /// <param select="bRequired"></param> public void SetStringValue( XenonName o_Name_Variable, string sValue, bool bRequired, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_MiddleImpl.Name_Library, this, "SetStringValue",log_Reports); // // if (bRequired && !this.dictionaryExpression_Item.ContainsKey(o_Name_Variable.SValue)) { goto gt_Error_NotFoundVariable; } else { Expression_Leaf_StringImpl ec_Str = new Expression_Leaf_StringImpl(null, new Configurationtree_NodeImpl("<SetStringValueから>", null)); ec_Str.SetString(sValue, log_Reports); this.dictionaryExpression_Item[o_Name_Variable.SValue] = ec_Str; //.WriteLine(this.GetType().Name + "#SetStringValue: ◆ 文字列型変数[" + oVariableName.OValue + "]に、値["+value+"]をセットしました。"); } goto gt_EndMethod; // // #region 異常系 //──────────────────────────────────────── gt_Error_NotFoundVariable: if (log_Reports.CanCreateReport) { Log_RecordReports r = log_Reports.BeginCreateReport(EnumReport.Error); r.SetTitle("▲エラー923!", log_Method); Log_TextIndented t = new Log_TextIndentedImpl(); t.Append("["); t.Append(o_Name_Variable.SValue); t.Append("]という名前の 文字列型の変数は、存在しませんでした。"); t.Append(Environment.NewLine); t.Append(Environment.NewLine); t.Append(" ヒント: 「変数設定ファイル」に登録されている変数だけ使えます。"); t.Append(Environment.NewLine); t.Append(" ヒント: 変数名の英字の大文字・小文字は完全に一致していますか?"); t.Append(Environment.NewLine); t.Append(" ヒント: 「ファイルパス型」と「文字列型」の2つがあります。"); t.Append(" 文字列型として利用されようとしました。"); t.Append(Environment.NewLine); t.Append(Environment.NewLine); t.Append(Environment.NewLine); t.Append(" 「変数設定ファイル」のファイルパス:"); t.Append(Environment.NewLine); t.Append(" "); if (null != this.parent_Variablesconfig_Configurationtree) { this.parent_Variablesconfig_Configurationtree.ToText_Locationbreadcrumbs(t); } else { t.Append("ヌル"); } t.Append(Environment.NewLine); t.Append(Environment.NewLine); t.Append(" 問題箇所ヒント:"); t.Append(Environment.NewLine); t.Append(" "); o_Name_Variable.Cur_Configuration.ToText_Locationbreadcrumbs(t); t.Append(Environment.NewLine); t.Append(Environment.NewLine); // ヒント t.Append(r.Message_SSeparator()); t.Append(" 変数一覧:"); t.Append(Environment.NewLine); foreach (string sVarName in this.DictionaryExpression_Item.Keys) { t.Append(" "); t.Append(sVarName); t.Append(Environment.NewLine); } t.Append(Environment.NewLine); r.Message = t.ToString(); log_Reports.EndCreateReport(); } goto gt_EndMethod; //──────────────────────────────────────── #endregion // // gt_EndMethod: log_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── /// <summary> /// 変数を設定します。 /// </summary> public void SetVariable( XenonName o_Name_Variable, Expression_Node_String ec_Value, bool bRequired, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_MiddleImpl.Name_Library, this, "SetVariable",log_Reports); // // if ( o_Name_Variable.SValue.StartsWith(NamesVar.S_SP_) || o_Name_Variable.SValue.StartsWith(NamesVar.S_UP_) ) { string sFilePath = ec_Value.Execute4_OnExpressionString(EnumHitcount.Unconstraint, log_Reports); Configurationtree_Node parent_Configurationtree_Node = new Configurationtree_NodeImpl("!ハードコーディング_" + this.GetType().Name + "#SetVariable", null); Configurationtree_NodeFilepath cf_Fpath = new Configurationtree_NodeFilepathImpl("ファイルパス出典未指定L09Mid_4", parent_Configurationtree_Node); cf_Fpath.InitPath( sFilePath, log_Reports ); if (!log_Reports.Successful) { // 既エラー。 goto gt_EndMethod; } Expression_Node_Filepath ec_Fpath = new Expression_Node_FilepathImpl(cf_Fpath); this.SetFilepathValue( o_Name_Variable.SValue, ec_Fpath, bRequired, log_Reports ); } else if ( // 新仕様 o_Name_Variable.SValue.StartsWith(NamesVar.S_SS_) || o_Name_Variable.SValue.StartsWith(NamesVar.S_US_) ) { string str1 = ec_Value.Execute4_OnExpressionString(EnumHitcount.Unconstraint, log_Reports); this.SetStringValue( o_Name_Variable, str1, bRequired, log_Reports ); } else { } // // // // gt_EndMethod: log_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── /// <summary> /// フォームのデータの再読み込みを行います。 /// /// どのフォームを再読み込みするかは、コントロール・リローディング設定ファイルで /// 設定しているリローダー要素の名前を指定します。 /// </summary> /// <param select="o_Name_Together"></param> public void RefreshDataRange( XenonName o_Name_Together, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_MiddleImpl.Name_Library, this, "RefreshDataRange",log_Reports); // // // // List<Configurationtree_Node> listCf_Together = this.Configurationtree_Togetherconfig.GetChildrenByNodename(NamesNode.S_TOGETHER, false, log_Reports); foreach (Configurationtree_Node cf_Together in listCf_Together) { string sFncName; cf_Together.Dictionary_Attribute.TryGetValue(PmNames.S_NAME, out sFncName, false, log_Reports); // 一致するのは1件しかない前提。 if (sFncName == o_Name_Together.SValue) { if (log_Reports.Successful) { // 最新表示にするコントロールの名前のリスト。 List<Configurationtree_Node> cfList_RfrTarget = cf_Together.GetChildrenByNodename(NamesNode.S_TARGET, false, log_Reports); foreach (Configurationtree_Node cf_RfrTarget in cfList_RfrTarget) { List<Usercontrol> list_FcUc; { string sName; cf_RfrTarget.Dictionary_Attribute.TryGetValue(PmNames.S_NAME, out sName, true, log_Reports); Expression_Node_StringImpl e_str = new Expression_Node_StringImpl(null, cf_RfrTarget); e_str.AppendTextNode( sName, cf_RfrTarget, log_Reports ); list_FcUc = this.Owner_MemoryApplication.MemoryForms.GetUsercontrolsByName( e_str, true, log_Reports ); } if (log_Reports.Successful) { Usercontrol fcUc = list_FcUc[0]; fcUc.RefreshData( log_Reports ); } } } } } // // // // log_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── /// <summary> /// 実行。 /// /// 指定のコントロールの、指定のイベントを実行します。 /// /// アプリケーション起動時に、"OnLoad"を全て実行するなど。 /// </summary> /// <param name="oEventName"></param> /// <param name="oEventName"></param> /// <param name="log_Reports"></param> protected void Execute1_UsercontrolImpl( object sender, Usercontrol ucFc, XenonName o_Name_Event, MemoryApplication owner_MemoryApplication, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_Functions.Name_Library, this, "Execute1_UsercontrolImpl", log_Reports); // // string sFcName2 = ucFc.ControlCommon.Expression_Name_Control.Execute4_OnExpressionString(EnumHitcount.Unconstraint, log_Reports); if (null == ucFc.ControlCommon.Configurationtree_Control) { // // 「コントロール設定ファイル」が無いコントロールの場合は、無視します。 // goto gt_EndMethod; } //if (0 < fcUc.ControlCommon.OCnf_Control.OEvents.Count) //{ // //.WriteLine(this.GetType().Name + "#: ■■コントロール=[" + fcNameStr2 + "] イベント数=[" + fcUc.ControlCommon.OFcnfControl.OEvents.Count + "]"); //} List<Configurationtree_Node> cfList_Event = ucFc.ControlCommon.Configurationtree_Control.GetChildrenByNodename(NamesNode.S_EVENT, false, log_Reports); foreach (Configurationtree_Node cf_Event in cfList_Event) { string sEventName; cf_Event.Dictionary_Attribute.TryGetValue(PmNames.S_NAME, out sEventName, true, log_Reports); if (!log_Reports.Successful) { goto gt_EndMethod; } if (o_Name_Event.SValue == sEventName) { Executer2_EventImpl exe1 = new Executer2_EventImpl(); exe1.Execute2_Event( sender, cf_Event, owner_MemoryApplication, log_Reports ); }//oEventName }//foreach goto gt_EndMethod; // // gt_EndMethod: log_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── /// <summary> /// 実行。 /// /// コントロールの名前数文字を指定して、一致するコントロールのイベントを実行します。 /// /// todo:どこから呼び出されている? /// </summary> /// <param name="oEventName"></param> /// <param name="oEventName"></param> /// <param name="log_Reports"></param> public void Execute1_UsercontrolNameStartsWith( object sender, string sFcNameStarts, XenonName o_Name_Event, MemoryApplication owner_MemoryApplication, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_Functions.Name_Library, this, "Execute1_UsercontrolNameStartsWith", log_Reports); // // Dictionary<string, Usercontrol> dic = owner_MemoryApplication.MemoryForms.ItemsStartsWith( sFcNameStarts, log_Reports ); foreach (Usercontrol ucFc in dic.Values) { if (null != ucFc) { this.Execute1_UsercontrolImpl( sender, ucFc, o_Name_Event, owner_MemoryApplication, log_Reports ); } else { // // // //string sFcName3 = ucFc.ControlCommon.Expression_Name_Control.E_Execute(log_Reports); //.WriteLine(this.GetType().Name + "#Perform_FcNameStartsWith: ■[" + sFcName_prm + "]という名前のコントロールはありませんでした。"); } } // // log_Method.EndMethod(log_Reports); //.WriteLine(this.GetType().Name + "#Perform_FcNameStartsWith: 【アクション_パフォーマー終了】"); }
//──────────────────────────────────────── /// <summary> /// 実行。 /// /// 指定のコントロールの、指定のイベントを実行します。 /// /// todo:どこで利用されている? /// </summary> /// <param name="sender"></param> /// <param name="nFcName">コントロール名。</param> /// <param name="oEventName"></param> /// <param name="log_Reports"></param> public void Execute1_Usercontrol( object sender, Expression_Node_String ec_FcName, XenonName o_Name_Event, MemoryApplication owner_MemoryApplication, Log_Reports log_Reports ) { //.WriteLine(this.GetType().Name + "#PerformFc: 【アクション_パフォーマー開始】"); Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_Functions.Name_Library, this, "Execute1_Usercontrol", log_Reports); // // Usercontrol ucFc = null; string sFcName1 = ec_FcName.Execute4_OnExpressionString(EnumHitcount.Unconstraint, log_Reports); owner_MemoryApplication.MemoryForms.ForEach_Children(delegate(string sKey, Usercontrol ucFc2, ref bool bRemove, ref bool bBreak) { string sFcName2 = ucFc2.ControlCommon.Expression_Name_Control.Execute4_OnExpressionString(EnumHitcount.Unconstraint, log_Reports); if (sFcName2 == sFcName1) { ucFc = ucFc2; } }); if (null != ucFc) { // 一致したfcUcがあれば、一致した最後のfcUcを。 this.Execute1_UsercontrolImpl( sender, ucFc, o_Name_Event, owner_MemoryApplication, log_Reports ); } else { // // // //.WriteLine(this.GetType().Name + "#PerformFc: ■[" + sFcName_prm + "]という名前のコントロールはありませんでした。"); } // // log_Method.EndMethod(log_Reports); //.WriteLine(this.GetType().Name + "#PerformFc: 【アクション_パフォーマー終了】"); }
//──────────────────────────────────────── /// <summary> /// フォームのデータの再読み込みを行います。 /// /// どのフォームを再読み込みするかは、コントロール・リローディング設定ファイルで /// 設定しているリローダー要素の名前を指定します。 /// </summary> /// <param select="o_Name_Together"></param> public void RefreshDataRange( XenonName o_Name_Together, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_MiddleImpl.Name_Library, this, "RefreshDataRange", log_Reports); // // // // List <Configurationtree_Node> listCf_Together = this.Configurationtree_Togetherconfig.GetChildrenByNodename(NamesNode.S_TOGETHER, false, log_Reports); foreach (Configurationtree_Node cf_Together in listCf_Together) { string sFncName; cf_Together.Dictionary_Attribute.TryGetValue(PmNames.S_NAME, out sFncName, false, log_Reports); // 一致するのは1件しかない前提。 if (sFncName == o_Name_Together.SValue) { if (log_Reports.Successful) { // 最新表示にするコントロールの名前のリスト。 List <Configurationtree_Node> cfList_RfrTarget = cf_Together.GetChildrenByNodename(NamesNode.S_TARGET, false, log_Reports); foreach (Configurationtree_Node cf_RfrTarget in cfList_RfrTarget) { List <Usercontrol> list_FcUc; { string sName; cf_RfrTarget.Dictionary_Attribute.TryGetValue(PmNames.S_NAME, out sName, true, log_Reports); Expression_Node_StringImpl e_str = new Expression_Node_StringImpl(null, cf_RfrTarget); e_str.AppendTextNode( sName, cf_RfrTarget, log_Reports ); list_FcUc = this.Owner_MemoryApplication.MemoryForms.GetUsercontrolsByName( e_str, true, log_Reports ); } if (log_Reports.Successful) { Usercontrol fcUc = list_FcUc[0]; fcUc.RefreshData( log_Reports ); } } } } } // // // // log_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── /// <summary> /// 文字列型変数の値をセットします。 /// </summary> /// <param select="oVariableName"></param> /// <param select="nValue"></param> /// <param select="bRequired"></param> public void SetStringValue( XenonName o_Name_Variable, string sValue, bool bRequired, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_MiddleImpl.Name_Library, this, "SetStringValue", log_Reports); // // if (bRequired && !this.dictionaryExpression_Item.ContainsKey(o_Name_Variable.SValue)) { goto gt_Error_NotFoundVariable; } else { Expression_Leaf_StringImpl ec_Str = new Expression_Leaf_StringImpl(null, new Configurationtree_NodeImpl("<SetStringValueから>", null)); ec_Str.SetString(sValue, log_Reports); this.dictionaryExpression_Item[o_Name_Variable.SValue] = ec_Str; //.WriteLine(this.GetType().Name + "#SetStringValue: ◆ 文字列型変数[" + oVariableName.OValue + "]に、値["+value+"]をセットしました。"); } goto gt_EndMethod; // // #region 異常系 //──────────────────────────────────────── gt_Error_NotFoundVariable: if (log_Reports.CanCreateReport) { Log_RecordReports r = log_Reports.BeginCreateReport(EnumReport.Error); r.SetTitle("▲エラー923!", log_Method); Log_TextIndented t = new Log_TextIndentedImpl(); t.Append("["); t.Append(o_Name_Variable.SValue); t.Append("]という名前の 文字列型の変数は、存在しませんでした。"); t.Append(Environment.NewLine); t.Append(Environment.NewLine); t.Append(" ヒント: 「変数設定ファイル」に登録されている変数だけ使えます。"); t.Append(Environment.NewLine); t.Append(" ヒント: 変数名の英字の大文字・小文字は完全に一致していますか?"); t.Append(Environment.NewLine); t.Append(" ヒント: 「ファイルパス型」と「文字列型」の2つがあります。"); t.Append(" 文字列型として利用されようとしました。"); t.Append(Environment.NewLine); t.Append(Environment.NewLine); t.Append(Environment.NewLine); t.Append(" 「変数設定ファイル」のファイルパス:"); t.Append(Environment.NewLine); t.Append(" "); if (null != this.parent_Variablesconfig_Configurationtree) { this.parent_Variablesconfig_Configurationtree.ToText_Locationbreadcrumbs(t); } else { t.Append("ヌル"); } t.Append(Environment.NewLine); t.Append(Environment.NewLine); t.Append(" 問題箇所ヒント:"); t.Append(Environment.NewLine); t.Append(" "); o_Name_Variable.Cur_Configuration.ToText_Locationbreadcrumbs(t); t.Append(Environment.NewLine); t.Append(Environment.NewLine); // ヒント t.Append(r.Message_SSeparator()); t.Append(" 変数一覧:"); t.Append(Environment.NewLine); foreach (string sVarName in this.DictionaryExpression_Item.Keys) { t.Append(" "); t.Append(sVarName); t.Append(Environment.NewLine); } t.Append(Environment.NewLine); r.Message = t.ToString(); log_Reports.EndCreateReport(); } goto gt_EndMethod; //──────────────────────────────────────── #endregion // // gt_EndMethod: log_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── /// <summary> /// 変数を設定します。 /// </summary> public void SetVariable( XenonName o_Name_Variable, Expression_Node_String ec_Value, bool bRequired, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_MiddleImpl.Name_Library, this, "SetVariable", log_Reports); // // if ( o_Name_Variable.SValue.StartsWith(NamesVar.S_SP_) || o_Name_Variable.SValue.StartsWith(NamesVar.S_UP_) ) { string sFilePath = ec_Value.Execute4_OnExpressionString(EnumHitcount.Unconstraint, log_Reports); Configurationtree_Node parent_Configurationtree_Node = new Configurationtree_NodeImpl("!ハードコーディング_" + this.GetType().Name + "#SetVariable", null); Configurationtree_NodeFilepath cf_Fpath = new Configurationtree_NodeFilepathImpl("ファイルパス出典未指定L09Mid_4", parent_Configurationtree_Node); cf_Fpath.InitPath( sFilePath, log_Reports ); if (!log_Reports.Successful) { // 既エラー。 goto gt_EndMethod; } Expression_Node_Filepath ec_Fpath = new Expression_Node_FilepathImpl(cf_Fpath); this.SetFilepathValue( o_Name_Variable.SValue, ec_Fpath, bRequired, log_Reports ); } else if ( // 新仕様 o_Name_Variable.SValue.StartsWith(NamesVar.S_SS_) || o_Name_Variable.SValue.StartsWith(NamesVar.S_US_) ) { string str1 = ec_Value.Execute4_OnExpressionString(EnumHitcount.Unconstraint, log_Reports); this.SetStringValue( o_Name_Variable, str1, bRequired, log_Reports ); } else { } // // // // gt_EndMethod: log_Method.EndMethod(log_Reports); }
//──────────────────────────────────────── /// <summary> /// 実行。 /// /// 指定のコントロールの、指定のイベントを実行します。 /// /// アプリケーション起動時に、"OnLoad"を全て実行するなど。 /// </summary> /// <param name="oEventName"></param> /// <param name="oEventName"></param> /// <param name="log_Reports"></param> protected void Execute1_UsercontrolImpl( object sender, Usercontrol ucFc, XenonName o_Name_Event, MemoryApplication owner_MemoryApplication, Log_Reports log_Reports ) { Log_Method log_Method = new Log_MethodImpl(0, Log_ReportsImpl.BDebugmode_Static); log_Method.BeginMethod(Info_Functions.Name_Library, this, "Execute1_UsercontrolImpl", log_Reports); // // string sFcName2 = ucFc.ControlCommon.Expression_Name_Control.Execute4_OnExpressionString(EnumHitcount.Unconstraint, log_Reports); if (null == ucFc.ControlCommon.Configurationtree_Control) { // // 「コントロール設定ファイル」が無いコントロールの場合は、無視します。 // goto gt_EndMethod; } //if (0 < fcUc.ControlCommon.OCnf_Control.OEvents.Count) //{ // //.WriteLine(this.GetType().Name + "#: ■■コントロール=[" + fcNameStr2 + "] イベント数=[" + fcUc.ControlCommon.OFcnfControl.OEvents.Count + "]"); //} List <Configurationtree_Node> cfList_Event = ucFc.ControlCommon.Configurationtree_Control.GetChildrenByNodename(NamesNode.S_EVENT, false, log_Reports); foreach (Configurationtree_Node cf_Event in cfList_Event) { string sEventName; cf_Event.Dictionary_Attribute.TryGetValue(PmNames.S_NAME, out sEventName, true, log_Reports); if (!log_Reports.Successful) { goto gt_EndMethod; } if (o_Name_Event.SValue == sEventName) { Executer2_EventImpl exe1 = new Executer2_EventImpl(); exe1.Execute2_Event( sender, cf_Event, owner_MemoryApplication, log_Reports ); } //oEventName } //foreach goto gt_EndMethod; // // gt_EndMethod: log_Method.EndMethod(log_Reports); }