<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Enabling an Addin Button From a Modeless Form in ArcObjects SDK Questions</title>
    <link>https://community.esri.com/t5/arcobjects-sdk-questions/enabling-an-addin-button-from-a-modeless-form/m-p/222003#M5745</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi, here is the code to get an addin button in C#&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
// Enable the save button
SaveEditingButton saveButton = AddIn.FromID&amp;lt;SaveEditingButton&amp;gt;(ThisAddIn.IDs.RasterEditor_EditorMenu_Edition_SaveEditingButton);
saveButton.IsEnabled = true;
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;IDs of addin controls are defined at Config.esriaddinx in your solution folder. I think it can solve your problem.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Haoliang&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 11 Dec 2021 10:49:07 GMT</pubDate>
    <dc:creator>HaoliangYu</dc:creator>
    <dc:date>2021-12-11T10:49:07Z</dc:date>
    <item>
      <title>Enabling an Addin Button From a Modeless Form</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/enabling-an-addin-button-from-a-modeless-form/m-p/221998#M5740</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I have an Addin button (called Analyze) that processes some data, then calls a modeless form. I want the button to be disabled until the user closes the form, or else it will be possible for the user to accidentially have multiple instances of the form open at the same time.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;To disable the button I use&lt;/SPAN&gt;&lt;PRE class="plain" name="code"&gt;Me.Enabled = False&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;SPAN&gt;in the button's OnClick event. What I can't figure out is how to reference the button from within the form. I was planning on changing the button's Enabled attribute back to True in the form's FormClosing event, unless someone knows of a better way.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Any Ideas?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Dec 2013 15:57:22 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/enabling-an-addin-button-from-a-modeless-form/m-p/221998#M5740</guid>
      <dc:creator>BruceNielsen</dc:creator>
      <dc:date>2013-12-19T15:57:22Z</dc:date>
    </item>
    <item>
      <title>Re: Enabling an Addin Button From a Modeless Form</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/enabling-an-addin-button-from-a-modeless-form/m-p/221999#M5741</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;What I can't figure out is how to reference the button from within the form&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;Because you don't have access to the variables you need?&amp;nbsp; (I'm guessing).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This is solved by using a static factory method in the Form that returns an instance of the form.&amp;nbsp; I don't know if you can do this in VBA, I'm sure someone will reply with a global variable example.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Dec 2013 16:24:40 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/enabling-an-addin-button-from-a-modeless-form/m-p/221999#M5741</guid>
      <dc:creator>LeoDonahue</dc:creator>
      <dc:date>2013-12-19T16:24:40Z</dc:date>
    </item>
    <item>
      <title>Re: Enabling an Addin Button From a Modeless Form</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/enabling-an-addin-button-from-a-modeless-form/m-p/222000#M5742</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I'm using Visual Studio 2010, .NET 3.5 with ArcGIS 10.0.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Dec 2013 18:26:28 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/enabling-an-addin-button-from-a-modeless-form/m-p/222000#M5742</guid>
      <dc:creator>BruceNielsen</dc:creator>
      <dc:date>2013-12-19T18:26:28Z</dc:date>
    </item>
    <item>
      <title>Re: Enabling an Addin Button From a Modeless Form</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/enabling-an-addin-button-from-a-modeless-form/m-p/222001#M5743</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;I have an Addin button (called Analyze) that processes some data, then calls a modeless form. I want the button to be disabled until the user closes the form, or else it will be possible for the user to accidentially have multiple instances of the form open at the same time.&lt;BR /&gt;&lt;BR /&gt;To disable the button I use&lt;PRE __default_attr="plain" __jive_macro_name="code" class="jive_macro_code jive_text_macro"&gt;Me.Enabled = False&lt;/PRE&gt;in the button's OnClick event. What I can't figure out is how to reference the button from within the form. I was planning on changing the button's Enabled attribute back to True in the form's FormClosing event, unless someone knows of a better way.&lt;BR /&gt;&lt;BR /&gt;Any Ideas?&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Without seeing you actual code I can only offer a possible solution.&amp;nbsp; We do this all the time, one of our commands opens a modeless dialog and we keep the command button checked for as long as the dialog is open.&amp;nbsp; To do this, we create a form level variable for the dialog.&amp;nbsp; In the OnClick event, we create the instance of the dialog and open it.&amp;nbsp; In the Checked event, we check the visibility of the form and return the value accordingly.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here's the form variable declaration:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Private m_form As yourFormClass&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here's the code in OnClick:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Sub OnClick() Implements ESRI.ArcGIS.SystemUI.ICommand.OnClick&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If m_form IsNot Nothing AndAlso m_form.Visible Then Return&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_form = New yourFormClass()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_form.Show()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here's the code in Checked:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public ReadOnly Property Checked As Boolean Implements ESRI.ArcGIS.SystemUI.ICommand.Checked&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Get&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Return (m_form IsNot Nothing AndAlso m_form.Visible)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Get&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Property&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Dec 2013 18:30:55 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/enabling-an-addin-button-from-a-modeless-form/m-p/222001#M5743</guid>
      <dc:creator>NeilClemmons</dc:creator>
      <dc:date>2013-12-19T18:30:55Z</dc:date>
    </item>
    <item>
      <title>Re: Enabling an Addin Button From a Modeless Form</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/enabling-an-addin-button-from-a-modeless-form/m-p/222002#M5744</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;The Java version of Neil's example is very similar.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The Button class&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
public class Button1 extends Button {
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; private MyForm myForm = null;

&amp;nbsp;&amp;nbsp;&amp;nbsp; @Override
&amp;nbsp;&amp;nbsp;&amp;nbsp; public void onClick() throws IOException, AutomationException {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(myForm == null){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; myForm = MyForm.getInstance();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; myForm.setVisible(true);
&amp;nbsp;&amp;nbsp;&amp;nbsp; }

}
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The Form class&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
public class MyForm extends JFrame {

&amp;nbsp;&amp;nbsp;&amp;nbsp; private JPanel contentPane;

&amp;nbsp;&amp;nbsp;&amp;nbsp; private static MyForm instance = null;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; public static MyForm getInstance(){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(instance == null){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; instance = new MyForm();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return instance;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }

&amp;nbsp;&amp;nbsp;&amp;nbsp; /**
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Create the frame.
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */
&amp;nbsp;&amp;nbsp;&amp;nbsp; public MyForm() {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; setBounds(100, 100, 450, 300);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; contentPane = new JPanel();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; contentPane.setLayout(new BorderLayout(0, 0));
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; setContentPane(contentPane);
&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; // handle closing of the form, maybe dispose on close...
}
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 10:49:03 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/enabling-an-addin-button-from-a-modeless-form/m-p/222002#M5744</guid>
      <dc:creator>LeoDonahue</dc:creator>
      <dc:date>2021-12-11T10:49:03Z</dc:date>
    </item>
    <item>
      <title>Re: Enabling an Addin Button From a Modeless Form</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/enabling-an-addin-button-from-a-modeless-form/m-p/222003#M5745</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi, here is the code to get an addin button in C#&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
// Enable the save button
SaveEditingButton saveButton = AddIn.FromID&amp;lt;SaveEditingButton&amp;gt;(ThisAddIn.IDs.RasterEditor_EditorMenu_Edition_SaveEditingButton);
saveButton.IsEnabled = true;
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;IDs of addin controls are defined at Config.esriaddinx in your solution folder. I think it can solve your problem.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Haoliang&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 10:49:07 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/enabling-an-addin-button-from-a-modeless-form/m-p/222003#M5745</guid>
      <dc:creator>HaoliangYu</dc:creator>
      <dc:date>2021-12-11T10:49:07Z</dc:date>
    </item>
  </channel>
</rss>

