private void ParseScoreNode(IXmlNode element)
{
element.IterateChildren(c =>
{
if (c.NodeType == XmlNodeType.Element)
{
switch (c.LocalName)
{
case "Title":
Score.Title = GetValue(c.FirstChild);
break;
case "SubTitle":
Score.SubTitle = GetValue(c.FirstChild);
break;
case "Artist":
Score.Artist = GetValue(c.FirstChild);
break;
case "Album":
Score.Album = GetValue(c.FirstChild);
break;
case "Words":
Score.Words = GetValue(c.FirstChild);
break;
case "Music":
Score.Music = GetValue(c.FirstChild);
break;
case "WordsAndMusic":
if (c.FirstChild != null && c.FirstChild.ToString() != "")
{
var wordsAndMusic = GetValue(c.FirstChild);
if (!string.IsNullOrEmpty(wordsAndMusic) && string.IsNullOrEmpty(Score.Words))
{
Score.Words = wordsAndMusic;
}
if (!string.IsNullOrEmpty(wordsAndMusic) && string.IsNullOrEmpty(Score.Music))
{
Score.Music = wordsAndMusic;
}
}
break;
case "Copyright":
Score.Copyright = GetValue(c.FirstChild);
break;
case "Tabber":
Score.Tab = GetValue(c.FirstChild);
break;
case "Instructions":
Score.Instructions = GetValue(c.FirstChild);
break;
case "Notices":
Score.Notices = GetValue(c.FirstChild);
break;
}
}
});
}