ivr流程编辑器

CtlIVRDefinevar.cs 3.5KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Drawing;
  5. using System.Data;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using HySoft.IVRFlowEditor.IVRControlUtility;
  10. using HySoft.IVRFlowEditor.Utility;
  11. namespace HySoft.IVRFlowEditor.Propretity
  12. {
  13. public partial class CtlIVRDefinevar : UserControl
  14. {
  15. public CtlIVRDefinevar()
  16. {
  17. InitializeComponent();
  18. }
  19. public CtlIVRDefinevar(IVRDefinevar obj)
  20. {
  21. InitializeComponent();
  22. _IVRDefinevar = obj;
  23. this.Load += new EventHandler(CtlIVRDefinevar_Load);
  24. }
  25. void CtlIVRDefinevar_Load(object sender, EventArgs e)
  26. {
  27. this.tb_NodeID.Text = _IVRDefinevar.Pos;
  28. this.tb_NodeName.Text = _IVRDefinevar.Name;
  29. this.rtb_Note.Text = _IVRDefinevar.Note;
  30. this.cmb_NextNode.DataSource = GlobalController.GetComBoBoxofIVR();
  31. this.cmb_NextNode.DisplayMember = "Note";//2017-5-8将Name改为Note
  32. this.cmb_NextNode.ValueMember = "ID";
  33. if (_IVRDefinevar.Next != null)
  34. this.cmb_NextNode.SelectedItem = _IVRDefinevar.Next;
  35. int i = 0;
  36. if (_IVRDefinevar.DefVar != null)
  37. foreach (IVRDefinevarDefVar Var in _IVRDefinevar.DefVar)
  38. {
  39. Var.CtlIVRDefinevarDefVar.Width = this.panel1.Width;
  40. Var.CtlIVRDefinevarDefVar.Height = 30;
  41. Var.CtlIVRDefinevarDefVar.Location = new Point(0 , 30 * i);//screenPoint.Y+
  42. //Var.CtlIVRDefinevarDefVar.Location = new Point(0, 30 * this.panel1.Controls.Count);
  43. this.panel1.Controls.Add(Var.CtlIVRDefinevarDefVar);
  44. i++;
  45. }
  46. }
  47. IVRDefinevar _IVRDefinevar;
  48. private void btn_add_Click(object sender, EventArgs e)
  49. {
  50. IVRDefinevarDefVar var = new IVRDefinevarDefVar();
  51. var.CtlIVRDefinevarDefVar.Width = this.panel1.Width;
  52. var.CtlIVRDefinevarDefVar.Height = 30;
  53. var.CtlIVRDefinevarDefVar.Location = new Point(0, 30 * this.panel1.Controls.Count);
  54. this.panel1.Controls.Add(var.CtlIVRDefinevarDefVar);
  55. _IVRDefinevar.DefVar.Add(var);
  56. }
  57. private void btn_delete_Click(object sender, EventArgs e)
  58. {
  59. if (_IVRDefinevar.DefVar.Count > 0)
  60. {
  61. this.panel1.Controls.Remove(_IVRDefinevar.DefVar[_IVRDefinevar.DefVar.Count - 1].CtlIVRDefinevarDefVar);
  62. _IVRDefinevar.DefVar.Remove(_IVRDefinevar.DefVar[_IVRDefinevar.DefVar.Count - 1]);
  63. }
  64. }
  65. private void btn_enter_Click(object sender, EventArgs e)
  66. {
  67. _IVRDefinevar.Name = tb_NodeName.Text;
  68. _IVRDefinevar.Note = rtb_Note.Text;
  69. foreach (IVRDefinevarDefVar i in _IVRDefinevar.DefVar)
  70. {
  71. i.CtlIVRDefinevarDefVar.Enter();
  72. }
  73. if (this.cmb_NextNode.SelectedItem != null)
  74. _IVRDefinevar.Next= (this.cmb_NextNode.SelectedItem as IVRControlBase);
  75. GlobalController.SetFlowVar(_IVRDefinevar.DefVar);
  76. this.FindForm().DialogResult = DialogResult.OK;
  77. this.FindForm().Close();
  78. }
  79. private void btn_cancel_Click(object sender, EventArgs e)
  80. {
  81. this.FindForm().DialogResult = DialogResult.No;
  82. this.FindForm().Close();
  83. }
  84. }
  85. }