private void saveM11() { // DomainMap System.Xml.XmlNodeList nodes = getFieldNodes(this.FieldGrid.SelectedIndex + 1); if (nodes != null) { DataGrid grid = this.Method11Grid as DataGrid; if (grid == null) { return; } try { string method = getMethodVal(); nodes[0].SelectSingleNode("Method").InnerText = method; trimNodes(nodes, 3); System.Xml.XmlNode noder = nodes[0].SelectSingleNode(method); if (noder == null) { noder = _xml.CreateElement(method); nodes[0].AppendChild(noder); } noder.RemoveAll(); for (int s = 0; s < grid.Items.Count; s++) { object values = grid.Items[s]; DomainMapRow row = grid.Items.GetItemAt(s) as DomainMapRow; if (row != null) { System.Xml.XmlNode snode = _xml.CreateElement("sValue"); if (row.SourceSelectedItem > -1) // there may not be a selection { snode.InnerText = row.Source[row.SourceSelectedItem].Id; noder.AppendChild(snode); snode = _xml.CreateElement("sLabel"); snode.InnerText = row.Source[row.SourceSelectedItem].Tooltip; noder.AppendChild(snode); } else { snode.InnerText = _noneField; noder.AppendChild(snode); snode = _xml.CreateElement("sLabel"); snode.InnerText = _noneField; noder.AppendChild(snode); } System.Xml.XmlNode tnode = _xml.CreateElement("tValue"); tnode.InnerText = row.Target[row.TargetSelectedItem].Id; noder.AppendChild(tnode); tnode = _xml.CreateElement("tLabel"); tnode.InnerText = row.Target[row.TargetSelectedItem].Tooltip; noder.AppendChild(tnode); } } saveFieldGrid(); } catch { } } }
private void Method11Target_SelectionChanged(object sender, SelectionChangedEventArgs e) { ComboBox cb = sender as ComboBox; if (cb != null) { if (cb.SelectedIndex == -1) { return; } else { DataGrid grid = this.Method11Grid as DataGrid; if (grid == null || grid.SelectedIndex == -1) { return; } //object values = grid.Items[grid.SelectedIndex]; DomainMapRow row = grid.Items.GetItemAt(grid.SelectedIndex) as DomainMapRow; ComboData rowSource = _domainTargetValues[cb.SelectedIndex] as ComboData; if (row != null) // if there is a matching target domain value for the selection { // Then update the row DomainMapValues and set the tooltip to the value for the code row.TargetSelectedItem = cb.SelectedIndex; row.TargetTooltip = rowSource.Tooltip; cb.ToolTip = rowSource.Tooltip; } } } }
private void setPreviewDomainMapRows(string attrName) { DataGrid grid = PreviewGrid; grid.Items.Clear(); string targName = getTargetFieldName(); if (_datarows != null) { for (int i = 0; i < _datarows.Count; i++) { string textval = ""; try { if (attrName == null) { textval = targName + "=None"; } else { System.Xml.XmlAttribute att = _datarows[i].Attributes[attrName]; // the data rows from source dataset if (att != null) { try { textval = att.InnerText.ToString(); for (int r = 0; r < Method11Grid.Items.Count; r++) { // domain map replace function // match source code to target code DomainMapRow row = Method11Grid.Items.GetItemAt(r) as DomainMapRow; decimal numSource, numTarget; bool canConvert1 = decimal.TryParse(att.InnerText, out numSource); bool canConvert2 = decimal.TryParse(row.Source[row.SourceSelectedItem].Id, out numTarget); if ((canConvert1 && canConvert2) && numSource.Equals(numTarget)) { textval = row.Target[row.TargetSelectedItem].Id;//textval.Replace(row.Source[row.SourceSelectedItem].Id, row.Target[row.TargetSelectedItem].Id); } else if (att.InnerText == row.Source[row.SourceSelectedItem].Id) { textval = row.Target[row.TargetSelectedItem].Id;//textval.Replace(row.Source[row.SourceSelectedItem].Id, row.Target[row.TargetSelectedItem].Id); } } textval = targName + "=" + textval; } catch { textval = targName + "=" + "None"; } } } } catch { textval = targName + "=" + "None"; } grid.Items.Add(new PreviewRow() { Value = textval }); } } }