本文整理汇总了C#中Microsoft.Ddue.Tools.SyntaxWriter.WriteStartBlock方法的典型用法代码示例。如果您正苦于以下问题:C# SyntaxWriter.WriteStartBlock方法的具体用法?C# SyntaxWriter.WriteStartBlock怎么用?C# SyntaxWriter.WriteStartBlock使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Microsoft.Ddue.Tools.SyntaxWriter
的用法示例。
在下文中一共展示了SyntaxWriter.WriteStartBlock方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: WriteSyntax
public override void WriteSyntax(XPathNavigator reflection, SyntaxWriter writer)
{
writer.WriteStartBlock(Language);
// Check the list of assemblies for which to generate XAML syntax
string assemblyName = (string)reflection.Evaluate(apiContainingAssemblyExpression);
string namespaceName = (string)reflection.Evaluate(apiContainingNamespaceNameExpression);
if (!xamlAssemblies.ContainsKey(assemblyName.ToLower()))
{
WriteXamlBoilerplate(XamlBoilerplateID.nonXamlAssemblyBoilerplate, writer);
}
else
{
string group = (string)reflection.Evaluate(apiGroupExpression);
switch (group)
{
case "namespace":
WriteNamespaceSyntax(reflection, writer);
break;
case "type":
WriteTypeSyntax(reflection, writer);
break;
case "member":
WriteMemberSyntax(reflection, writer);
break;
}
WriteXamlXmlnsUri(assemblyName, namespaceName, writer);
}
writer.WriteEndBlock();
}
示例2: WriteSyntax
// Methods to write syntax for different kinds of APIs
public override void WriteSyntax (XPathNavigator reflection, SyntaxWriter writer) {
writer.WriteStartBlock(Language);
string group = (string) reflection.Evaluate(apiGroupExpression);
switch (group) {
case "namespace":
WriteNamespaceSyntax(reflection, writer);
break;
case "type":
WriteTypeSyntax(reflection, writer);
break;
case "member":
WriteMemberSyntax(reflection, writer);
break;
}
writer.WriteEndBlock();
}
示例3: WriteEventSyntax
private void WriteEventSyntax (XPathNavigator reflection, SyntaxWriter writer, string prefix) {
string name = (string)reflection.Evaluate(nameExpression);
string declaringType = (string)reflection.Evaluate(declaringTypeExpression);
string handlerType = (string)reflection.Evaluate(eventHandlerTypeExpression);
writer.WriteStartBlock(Language);
writer.WriteString("<");
writer.WriteString(prefix);
writer.WriteString(":");
writer.WriteReferenceLink(declaringType);
writer.WriteString(" ");
writer.WriteString("On");
writer.WriteString(name);
writer.WriteString("=\"");
writer.WriteReferenceLink(handlerType);
writer.WriteString("\" />");
writer.WriteEndBlock();
}
示例4: WriteClassSyntax
private void WriteClassSyntax (XPathNavigator reflection, SyntaxWriter writer, string prefix) {
string name = (string)reflection.Evaluate(nameExpression);
writer.WriteStartBlock(Language);
writer.WriteString("<");
writer.WriteString(prefix);
writer.WriteString(":");
writer.WriteString(name);
writer.WriteString(" />");
writer.WriteEndBlock();
}
示例5: WritePropertySyntax
private void WritePropertySyntax (XPathNavigator reflection, SyntaxWriter writer, string prefix) {
bool set = (bool) reflection.Evaluate(propertyIsSettable);
if (!set) return;
string name = (string) reflection.Evaluate(nameExpression);
string declaringType = (string) reflection.Evaluate(declaringTypeExpression);
string propertyType = (string) reflection.Evaluate(propertyTypeExpression);
bool isInnerProperty = (bool)reflection.Evaluate(propertyIsInnerProperty);
writer.WriteStartBlock(Language);
if (isInnerProperty) {
// inner property logic
writer.WriteString("<");
writer.WriteString(prefix);
writer.WriteString(":");
writer.WriteReferenceLink(declaringType);
writer.WriteString(">");
writer.WriteLine();
writer.WriteString("\t");
writer.WriteString("<");
writer.WriteString(name);
writer.WriteString(">");
if (String.IsNullOrEmpty(propertyType)) {
writer.WriteParameter("value");
} else {
if (propertyType == "T:System.Boolean") {
writer.WriteString("True|False");
} else {
writer.WriteReferenceLink(propertyType);
}
}
writer.WriteString("</");
writer.WriteString(name);
writer.WriteString(">");
writer.WriteLine();
writer.WriteString("</");
writer.WriteString(prefix);
writer.WriteString(":");
writer.WriteReferenceLink(declaringType);
writer.WriteString(">");
} else {
// normal property logic
writer.WriteString("<");
writer.WriteString(prefix);
writer.WriteString(":");
writer.WriteReferenceLink(declaringType);
writer.WriteString(" ");
writer.WriteString(name);
writer.WriteString("=\"");
if (String.IsNullOrEmpty(propertyType)) {
writer.WriteParameter("value");
} else {
if (propertyType == "T:System.Boolean") {
writer.WriteString("True|False");
} else {
writer.WriteReferenceLink(propertyType);
}
}
writer.WriteString("\" />");
}
writer.WriteEndBlock();
}