private void cmdOk_Click(object sender, EventArgs e) { foreach (var item in lstAdValues.Items) { DBRowValue tmp = (DBRowValue)item; string ValName = item.ToString(); int SplitPos = ValName.LastIndexOf(" ("); ValName = ValName.Substring(0, SplitPos); if (tmp.myRow.PlcTag != null) { tmp.myRow.PlcTag.ValueName = ValName.Replace(" ", "_"); SelectedTags.Add(tmp.myRow.PlcTag); } } this.Close(); }
private void cmdOk_Click(object sender, EventArgs e) { if (SelectPart == SelectPartType.BlocksOfflineFolder) { if (treeStep7Project.SelectedNode != null) { var tmp = (myTreeNode)treeStep7Project.SelectedNode; if (tmp.myObject.GetType() == typeof(BlocksOfflineFolder)) { retVal = (BlocksOfflineFolder)tmp.myObject; } else { retVal = null; } } } else if (SelectPart == SelectPartType.S7ProgrammFolder) { if (treeStep7Project.SelectedNode != null) { var tmp = (myTreeNode)treeStep7Project.SelectedNode; if (tmp.myObject.GetType() == typeof(S7ProgrammFolder)) { retVal = (S7ProgrammFolder)tmp.myObject; } else { retVal = null; } } } else if (SelectPart == SelectPartType.VariableTable) { if (lstProjectFolder.SelectedItem != null) { this.Hide(); S7ProjectBlockInfo tmp = (S7ProjectBlockInfo)lstProjectFolder.SelectedItem; if (tmp.BlockType == PLCBlockType.VAT) { retVal = ((IBlocksFolder)tmp.ParentFolder).GetBlock(tmp); ((Block)retVal).ParentFolder = tmp.ParentFolder; } } } else if (SelectPart == SelectPartType.VariableTableOrSymbolTable) { if (lstProjectFolder.SelectedItem != null) { this.Hide(); S7ProjectBlockInfo tmp = (S7ProjectBlockInfo)lstProjectFolder.SelectedItem; if (tmp.BlockType == PLCBlockType.VAT) { retVal = ((IBlocksFolder)tmp.ParentFolder).GetBlock(tmp); ((Block)retVal).ParentFolder = tmp.ParentFolder; } } else if (treeStep7Project.SelectedNode != null) { var tmp = (myTreeNode)treeStep7Project.SelectedNode; if (tmp.myObject is ISymbolTable) { retVal = tmp.myObject as ISymbolTable; } } } else if (SelectPart == SelectPartType.DataBlock) { if (lstProjectFolder.SelectedItem != null) { this.Hide(); S7ProjectBlockInfo tmp = (S7ProjectBlockInfo)lstProjectFolder.SelectedItem; if (tmp.BlockType == PLCBlockType.DB) { retVal = ((IBlocksFolder)tmp.ParentFolder).GetBlock(tmp); ((Block)retVal).ParentFolder = tmp.ParentFolder; } } } else if (SelectPart == SelectPartType.DataBlocks) { if (lstProjectFolder.SelectedItems.Count > 0) { this.Hide(); var blocks = new List <S7DataBlock>(); foreach (S7ProjectBlockInfo s7ProjectBlockInfo in lstProjectFolder.SelectedItems) { if (s7ProjectBlockInfo.BlockType == PLCBlockType.DB) { var block = ((IBlocksFolder)s7ProjectBlockInfo.ParentFolder).GetBlock(s7ProjectBlockInfo); block.ParentFolder = s7ProjectBlockInfo.ParentFolder; blocks.Add((S7DataBlock)block); } } retVal = blocks.Count > 0 ? blocks : null; } } else if (SelectPart == SelectPartType.FunctionBlock) { if (lstProjectFolder.SelectedItem != null) { this.Hide(); S7ProjectBlockInfo tmp = (S7ProjectBlockInfo)lstProjectFolder.SelectedItem; if (tmp.BlockType == PLCBlockType.FC || tmp.BlockType == PLCBlockType.FB || tmp.BlockType == PLCBlockType.OB) { retVal = ((IBlocksFolder)tmp.ParentFolder).GetBlock(tmp); ((Block)retVal).ParentFolder = tmp.ParentFolder; } } } else if (SelectPart == SelectPartType.DataType) { if (lstProjectFolder.SelectedItem != null) { this.Hide(); S7ProjectBlockInfo tmp = (S7ProjectBlockInfo)lstProjectFolder.SelectedItem; if (tmp.BlockType == PLCBlockType.UDT) { retVal = ((IBlocksFolder)tmp.ParentFolder).GetBlock(tmp); ((Block)retVal).ParentFolder = tmp.ParentFolder; } } } else if (SelectPart == SelectPartType.SymbolTable) { if (treeStep7Project.SelectedNode != null) { var tmp = (myTreeNode)treeStep7Project.SelectedNode; if (tmp.myObject is ISymbolTable) { retVal = tmp.myObject as ISymbolTable; } else { retVal = null; } } } else if (SelectPart == SelectPartType.Tag) { if (lstProjectFolder.SelectedItem != null) { this.Hide(); DBRowValue tmp = (DBRowValue)lstProjectFolder.SelectedItem; retVal = tmp.myRow.PlcTag; } } if (retVal != null) { this.Close(); } else { MessageBox.Show("Please select the right Project Part, or press cancel to close this window."); } }