コード例 #1
0
ファイル: frmSurvey.cs プロジェクト: isaac0821/LifeGame
 private void cmsTagIndependent_Click(object sender, EventArgs e)
 {
     if (trvSurveyTag.SelectedNode != null)
     {
         TreeNode node            = trvSurveyTag.SelectedNode;
         TreeNode parentNode      = node.Parent;
         TreeNode grandparentNode = node.Parent.Parent;
         TreeNode newNode         = (TreeNode)node.Clone();
         if (node.Parent != null && node.Parent.Parent != null)
         {
             string parentNodeName      = parentNode.Text;
             string grandparentNodeName = grandparentNode.Text;
             G.glb.lstSurveySubTag.RemoveAll(o => o.Tag == parentNode.Text && o.SubTag == node.Text);
             RSurveySubTag newSub = new RSurveySubTag();
             newSub.SurveyTitle = lsbSurvey.SelectedItem.ToString();
             newSub.Tag         = grandparentNode.Text;
             newSub.SubTag      = node.Text;
             newSub.SubTagIndex = grandparentNode.Nodes.Count;
             G.glb.lstSurveySubTag.Add(newSub);
             grandparentNode.Nodes.Insert(parentNode.Index + 1, newNode);
             node.Remove();
             trvSurveyTag.SelectedNode = newNode;
             ReIndex(grandparentNodeName);
             ReIndex(parentNodeName);
         }
     }
 }
コード例 #2
0
ファイル: frmAddSurveyTag.cs プロジェクト: isaac0821/LifeGame
 private void btnSave_Click(object sender, EventArgs e)
 {
     if (G.glb.lstSurveyTag.Exists(o => o.SurveyTitle == lblSurveyName.Text && o.Tag == txtTagName.Text))
     {
         MessageBox.Show("Survey tag exists!", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
     }
     else if (cmbTagType.Text == "SingleOption" && lsbOption.Items.Count == 0)
     {
         MessageBox.Show("Please provide options", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
     }
     else
     {
         // Add survey tag
         RSurveyTag newSurveyTag = new RSurveyTag();
         newSurveyTag.SurveyTitle = lblSurveyName.Text;
         newSurveyTag.Tag         = txtTagName.Text;
         newSurveyTag.TagType     = (ESurveyTagType)(cmbTagType.SelectedIndex);
         G.glb.lstSurveyTag.Add(newSurveyTag);
         // Add survey tag relation
         RSurveySubTag newSurveySubTag = new RSurveySubTag();
         newSurveySubTag.SurveyTitle = lblSurveyName.Text;
         newSurveySubTag.Tag         = UpperSurveyTag;
         newSurveySubTag.SubTag      = txtTagName.Text;
         int maxIndex;
         if (G.glb.lstSurveySubTag.Exists(o => o.Tag == UpperSurveyTag))
         {
             List <RSurveySubTag> sameLevel = G.glb.lstSurveySubTag.FindAll(o => o.Tag == UpperSurveyTag).ToList();
             sameLevel = sameLevel.OrderByDescending(o => o.SubTagIndex).ToList();
             maxIndex  = sameLevel[0].SubTagIndex + 1;
         }
         else
         {
             maxIndex = 0;
         }
         newSurveySubTag.SubTagIndex = maxIndex;
         G.glb.lstSurveySubTag.Add(newSurveySubTag);
         // Add survey tag options
         if (cmbTagType.Text == "SingleOption" && lstOption.Count > 0)
         {
             foreach (string item in lstOption)
             {
                 RSurveyTagValueOption newSurveyTagValueOption = new RSurveyTagValueOption();
                 newSurveyTagValueOption.SurveyTitle = lblSurveyName.Text;
                 newSurveyTagValueOption.Tag         = txtTagName.Text;
                 newSurveyTagValueOption.TagOption   = item;
                 G.glb.lstSurveyTagValueOption.Add(newSurveyTagValueOption);
             }
         }
         AddChildNode(txtTagName.Text);
         Dispose();
     }
 }