/// <summary>
        /// This is the click handler for the 'Scenario2BtnDefault' button.
        /// This function will look up products and mark hot products.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void Scenario2BtnDefault_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                String xml;
                scenario2OriginalData.Document.GetText(Windows.UI.Text.TextGetOptions.None, out xml);

                var doc = new Windows.Data.Xml.Dom.XmlDocument();
                doc.LoadXml(xml);

                // Mark 'hot' attribute to '1' if 'sell10days' is greater than 'InStore'
                var xpath         = "/products/product[Sell10day>InStore]/@hot";
                var hotAttributes = doc.SelectNodes(xpath);
                for (uint index = 0; index < hotAttributes.Length; index++)
                {
                    hotAttributes.Item(index).NodeValue = "1";
                }

                Scenario.RichEditBoxSetMsg(scenario2Result, doc.GetXml(), true);
                scenario2BtnSave.IsEnabled = true;  // enable Save button
            }
            catch (Exception exp)
            {
                Scenario.RichEditBoxSetError(scenario2Result, exp.Message);
            }
        }
        /// <summary>
        /// This is the click handler for the 'Scenario2BtnDefault' button.
        /// This function will look up products and mark hot products.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void Scenario2BtnDefault_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                String xml;
                scenario2OriginalData.Document.GetText(Windows.UI.Text.TextGetOptions.None, out xml);

                var doc = new Windows.Data.Xml.Dom.XmlDocument();
                doc.LoadXml(xml);

                // Mark 'hot' attribute to '1' if 'sell10days' is greater than 'InStore'
                var xpath = "/products/product[Sell10day>InStore]/@hot";
                var hotAttributes = doc.SelectNodes(xpath);
                for (uint index = 0; index < hotAttributes.Length; index++)
                {
                    hotAttributes.Item(index).NodeValue = "1";
                }

                Scenario.RichEditBoxSetMsg(scenario2Result, doc.GetXml(), true);
                scenario2BtnSave.IsEnabled = true;  // enable Save button
            }
            catch (Exception exp)
            {
                Scenario.RichEditBoxSetError(scenario2Result, exp.Message);
            }
        }
        /// <summary>
        /// This is the click handler for the 'Scenario4BtnDefault' button.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void Scenario4BtnDefault_Click(object sender, RoutedEventArgs e)
        {
            String xml;

            scenario4OriginalData.Document.GetText(Windows.UI.Text.TextGetOptions.None, out xml);

            var doc = new Windows.Data.Xml.Dom.XmlDocument();

            doc.LoadXml(xml);

            var thisYear         = 2012; // Here we don't use DateTime.Now.Year to get the current year so that all gifts can be delivered.
            var previousOneYear  = thisYear - 1;
            var previousFiveYear = thisYear - 5;
            var previousTenYear  = thisYear - 10;

            var xpathArray = new String[3];

            // select >= 1 year and < 5 years
            xpathArray[0] = "descendant::employee[startyear <= " + previousOneYear + " and startyear > " + previousFiveYear + "]";
            // select >= 5 years and < 10 years
            xpathArray[1] = "descendant::employee[startyear <= " + previousFiveYear + " and startyear > " + previousTenYear + "]";
            // select >= 10 years
            xpathArray[2] = "descendant::employee[startyear <= " + previousTenYear + "]";

            var Gifts = new String[3] {
                "Gift Card", "XBOX", "Windows Phone"
            };

            var  output = new StringBuilder();
            uint i      = 0;

            foreach (var xpath in xpathArray)
            {
                var employees = doc.SelectNodes(xpath);
                foreach (var emplopyee in employees)
                {
                    var employeeName = emplopyee.SelectSingleNode("descendant::name");
                    var department   = emplopyee.SelectSingleNode("descendant::department");

                    output.AppendFormat("[{0}]/[{1}]/[{2}]\n", employeeName.FirstChild.NodeValue, department.FirstChild.NodeValue, Gifts[(i++) % 3]);
                }
            }

            Scenario.RichEditBoxSetMsg(scenario4Result, output.ToString(), true);
        }
        private async void BtnXmlWrite_Click(object sender, RoutedEventArgs e)
        {
            String input1value = TxtInput.Text;

            if (null != input1value && "" != input1value)
            {
                var value = doc.CreateTextNode(input1value);
                //find input1 tag in header where id=1
                var xpath       = "//header[@id='1']/user_input/input1";
                var input1nodes = doc.SelectNodes(xpath);
                for (uint index = 0; index < input1nodes.Length; index++)
                {
                    input1nodes.Item(index).AppendChild(value);
                }
                RichEditBoxSetMsg(ShowXMLResult, doc.GetXml(), true);
            }
            else
            {
                await new Windows.UI.Popups.MessageDialog("Please type in content in the  box firstly.").ShowAsync();
            }
        }
Exemple #5
0
        private static int ParseRSS(Windows.Data.Xml.Dom.XmlDocument xmlDoc, ObservableCollection <FeedItem> feedItems)
        {
            int addedItems = 0;

            Windows.Data.Xml.Dom.XmlNodeList rssNodes = xmlDoc.SelectNodes("rss/channel/item");

            foreach (Windows.Data.Xml.Dom.IXmlNode rssNode in rssNodes)
            {
                Windows.Data.Xml.Dom.IXmlNode rssSubNode = rssNode.SelectSingleNode("title");
                string title = rssSubNode != null ? rssSubNode.InnerText : "";

                rssSubNode = rssNode.SelectSingleNode("link");
                string link = rssSubNode != null ? rssSubNode.InnerText : "";

                rssSubNode = rssNode.SelectSingleNode("description");
                string description = rssSubNode != null ? rssSubNode.InnerText : "";

                feedItems.Add(new FeedItem(title, link, description));
                addedItems++;
            }

            return(addedItems);
        }
        /// <summary>
        /// This is the click handler for the 'Scenario4BtnDefault' button.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void Scenario4BtnDefault_Click(object sender, RoutedEventArgs e)
        {
            String xml;
            scenario4OriginalData.Document.GetText(Windows.UI.Text.TextGetOptions.None, out xml);

            var doc = new Windows.Data.Xml.Dom.XmlDocument();
            doc.LoadXml(xml);

            var thisYear = 2012;    // Here we don't use DateTime.Now.Year to get the current year so that all gifts can be delivered.
            var previousOneYear = thisYear - 1;
            var previousFiveYear = thisYear - 5;
            var previousTenYear = thisYear - 10;

            var xpathArray = new String[3];
            // select >= 1 year and < 5 years
            xpathArray[0] = "descendant::employee[startyear <= " + previousOneYear + " and startyear > " + previousFiveYear + "]";
            // select >= 5 years and < 10 years
            xpathArray[1] = "descendant::employee[startyear <= " + previousFiveYear + " and startyear > " + previousTenYear + "]";
            // select >= 10 years
            xpathArray[2] = "descendant::employee[startyear <= " + previousTenYear + "]";

            var Gifts = new String[3] { "Gift Card", "XBOX", "Windows Phone" };

            var output = new StringBuilder();
            uint i = 0;
            foreach (var xpath in xpathArray)
            {
                var employees = doc.SelectNodes(xpath);
                foreach (var emplopyee in employees)
                {
                    var employeeName = emplopyee.SelectSingleNode("descendant::name");
                    var department = emplopyee.SelectSingleNode("descendant::department");

                    output.AppendFormat("[{0}]/[{1}]/[{2}]\n", employeeName.FirstChild.NodeValue, department.FirstChild.NodeValue, Gifts[(i++) % 3]);
                }
            }

            Scenario.RichEditBoxSetMsg(scenario4Result, output.ToString(), true);
        }
        /// <summary>
        /// Remove note
        /// </summary>
        /// <param name="startText"></param>
        public void RemoveRecord(string name, string day, string month, string year)
        {
            Windows.Data.Xml.Dom.XmlDocument docs = new Windows.Data.Xml.Dom.XmlDocument();
            docs.SelectNodes("sprite");

            try
            {
                //try to load PersData.xml            
                Document.Root.Descendants("holidays").
                    Descendants("persDate").
                    Where(p => (p.Attribute("name").Value == name &&
                    p.Attribute("date").Value == day &&
                    p.Attribute("month").Value == month &&
                    p.Attribute("year").Value == year)).
                        Remove();

                //save changes
                SaveDocument();
            }
            catch (Exception e)
            {
                MyMessage(e.Message);
            }
        }