Ejemplo n.º 1
0
 /// <summary>
 /// Check the selected list view item which is a table name has Change Tracking enabled or not. If not enable then that table cannot be selected
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void listView1_ItemCheck(object sender, ItemCheckEventArgs e)
 {
     if (IsNewJob)
     {
         if (e.NewValue == CheckState.Checked)
         {
             string sError = "";
             if (PollPush.IsChangeTrackingEnable(ConnectionString, listView1.Items[e.Index].Text, out sError) == false)
             {
                 if (sError == "")
                 {
                     MessageBox.Show("'" + listView1.Items[e.Index].Text + "' table does not have Change Tracking enable, so this cannot be selected!", "Job Settings", MessageBoxButtons.OK, MessageBoxIcon.Information);
                     e.NewValue = CheckState.Unchecked;
                     listView1.Items[e.Index].Checked = false;
                 }
                 else
                 {
                     JobSettingsStatus.Text        = "Error - " + sError;
                     JobSettingsStatus.ToolTipText = "Error - " + sError;
                 }
             }
             else
             {
                 CreateNode(listView1.Items[e.Index].Text, listView1.Items[e.Index].Tag.ToString());
                 if (listView2.Visible && listView1.Items[e.Index].Selected)
                 {
                     ViewColumns(listView1.Items[e.Index], true);
                     if (listView2.CheckedItems.Count == listView2.Items.Count)
                     {
                         chkSelectAll.Checked = true;
                     }
                     if (xdData.SelectSingleNode("/Jobs/Job[@Name='" + txtJobName.Text + "']") != null)
                     {
                         SetDatasets();
                     }
                 }
             }
         }
         else if (e.NewValue == CheckState.Unchecked)
         {
             if (listView1.Items[e.Index].Selected && listView2.CheckedItems.Count > 0)
             {
                 foreach (ListViewItem lviChecked in listView2.CheckedItems)
                 {
                     lviChecked.Checked = false;
                 }
             }
             if (listView1.Items[e.Index] != null && listView1.CheckedItems.Count <= 1)
             {
                 XmlNode xnJobData = xdData.SelectSingleNode("/Jobs/Job[@Name='" + txtJobName.Text + "']");
                 xdData.DocumentElement.RemoveChild(xnJobData);
             }    // end (if (listView1.SelectedItems.Count > 0))
             else
             {
                 XmlNode xnJobData  = xdData.SelectSingleNode("/Jobs/Job[@Name='" + txtJobName.Text + "']");
                 XmlNode xnMetadata = xnJobData.SelectSingleNode("./JobMetadata[@Datasetname='" + listView1.Items[e.Index].Text + "']");
                 if (xnMetadata != null)
                 {
                     xnJobData.RemoveChild(xnMetadata);
                 }
             }
         }
     }
 }