public override SyntaxNode VisitEventDeclaration(EventDeclarationSyntax node) { base.VisitEventDeclaration(node); if (node.Parent is InterfaceDeclarationSyntax) return node; var symbol = semanticModel.GetDeclaredSymbol(node); var type = symbol.ContainingType; if (type == null) return node; var faceMembers = symbol.ImplementedInterfaceMember(); if (faceMembers.Count() != 1) return node; var interfaceNode = faceMembers.Single().GetSyntaxNodes().Single().Parent.Parent; if (interfaceNode.GetDocumentationCommentText() == "" || interfaceNode.GetDocumentationCommentText().Equals(node.GetDocumentationCommentText())) return node; return node.WithDocumentationComment(interfaceNode.GetDocumentationCommentText()); }