public override void WriteAttribute(CodeWriter writer)
        {
            var sb = new StringBuilder();

            if (UseGlobal)
            {
                sb.Append($"[global::Android.Runtime.Register (\"{Name}\"");
            }
            else
            {
                sb.Append($"[Register (\"{Name}\"");
            }

            if ((Signature.HasValue() || Connector.HasValue()) && !UseShortForm)
            {
                sb.Append($", \"{Signature}\", \"{Connector}\"");
            }

            if (DoNotGenerateAcw && !AcwLast)
            {
                sb.Append(", DoNotGenerateAcw=true");
            }

            if (AdditionalProperties.HasValue())
            {
                sb.Append(AdditionalProperties);
            }

            if (DoNotGenerateAcw && AcwLast)
            {
                sb.Append(", DoNotGenerateAcw=true");
            }

            sb.Append(")]");

            writer.WriteLine(sb.ToString());
        }