# C1.Win.C1DynamicHelp.C1DynamicHelp.AuthoringMode

## Content

<div class="doc-site-dotnet-api-container">



<h1 id="C1_Win_C1DynamicHelp_C1DynamicHelp_AuthoringMode_" data-uid="C1.Win.C1DynamicHelp.C1DynamicHelp.AuthoringMode*">AuthoringMode Property
</h1>
<div class="markdown level0 summary"></div>
<div class="markdown level0 conceptual"></div>



<a id="C1_Win_C1DynamicHelp_C1DynamicHelp_AuthoringMode_" data-uid="C1.Win.C1DynamicHelp.C1DynamicHelp.AuthoringMode*"></a>
<h4 id="C1_Win_C1DynamicHelp_C1DynamicHelp_AuthoringMode" data-uid="C1.Win.C1DynamicHelp.C1DynamicHelp.AuthoringMode">AuthoringMode</h4>
<div class="markdown level1 summary"><p>Gets or sets a value indicating whether the control is currently in 'authoring mode'.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="declaration">Declaration</h5>
<div class="codewrapper">
  <pre><code class="lang-csharp hljs">[Browsable(false)]
public bool AuthoringMode { get; set; }</code></pre>
</div>
<div class="codewrapper">
  <pre><code class="lang-vbnet hljs">&lt;Browsable(False)&gt;
Public Property AuthoringMode As Boolean</code></pre>
</div>
<h5 id="C1_Win_C1DynamicHelp_C1DynamicHelp_AuthoringMode_remarks">Remarks</h5>
<div class="markdown level1 remarks"><p>This property allows the application user to create or modify the <a class="xref" href="C1.Win.C1DynamicHelp.C1DynamicHelp.TopicMap.html#C1_Win_C1DynamicHelp_C1DynamicHelp_TopicMap">TopicMap</a> at run time, and save it to an XML file. 
All map items created in authoring mode have their <a class="xref" href="C1.Win.C1DynamicHelp.MapItem.ItemType.html#C1_Win_C1DynamicHelp_MapItem_ItemType">ItemType</a> property set to MapItemType.Dynamic.</p>
<p>The map items with dynamic <a class="xref" href="C1.Win.C1DynamicHelp.MapItem.ItemType.html#C1_Win_C1DynamicHelp_MapItem_ItemType">ItemType</a> have precedence over the items with static MapItem.ItemType.
If a UI element appears with both dynamic and static MapItem.ItemType, the entry with the dynamic MapItem.ItemType
will be used instead of the static one.</p>
<p>Authoring mode is typically enabled only in special builds used by control authors to create the dynamic 
topic map that is shipped with the release version of the application. In most cases, authoring mode needs to be
be disabled in the release application to prevent users from accidentally activating the authoring mode.
A typical implementation can look like this:</p>
<pre><code class="lang-csharp">// toggle authoring mode when the user hits ctrl+shift+a
override protected void OnKeyDown(KeyEventArgs e)
{
#if AUTHOR_MODE
    if (e.KeyCode == Keys.A &amp;&amp; e.Control &amp;&amp; e.Shift)
    {
        c1DynamicHelp1.AuthoringMode = !c1DynamicHelp1.AuthoringMode;
    }
#endif
    base.OnKeyDown(e);
}</code></pre>
</div>
</div>
