ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

ARCGIS PRO SDK 设置UI控件状态:启用/禁用

2026/8/5 8:34:31 拓冰建站 浏览量
ARCGIS PRO SDK 设置UI控件状态:启用/禁用

举例:
第一步:添加两个 Button 分别命名为Connect、Disconnect
第二步:nfig.daml添加状态和条件:在 DAML 中定义条件。请记住,条件存在于模块标记<modules>之外,下代码定义:Disconnected_condition初时为启用状态,Connected_condition初时为禁用状态。

<conditions><insertCondition id="Disconnected_condition"><not><state id="Connected_state" /></not></insertCondition><insertCondition id="Connected_condition"><state id="Connected_state" /></insertCondition>
</conditions>

第三步:在控件标记 <controls>Button,引用定义的condition

<controls><button id="BtnConnect_Connect" caption="Connect" className="Connect" smallImage="pack://application:,,,/ArcGIS.Desktop.Resources;component/Images/GenericButtonBlue16.png" largeImage="pack://application:,,,/ArcGIS.Desktop.Resources;component/Images/GenericButtonBlue32.png" condition="Disconnected_condition"><tooltip heading="Tooltip">使用此按钮连接</tooltip>"</button><button id="BtnConnect_Disconnect" caption="Disconnect" className="Disconnect" smallImage="pack://application:,,,/ArcGIS.Desktop.Resources;component/Images/GenericButtonBlue16.png" largeImage="pack://application:,,,/ArcGIS.Desktop.Resources;component/Images/GenericButtonBlue32.png" condition="Connected_condition"><tooltip heading="Tooltip">使用此按钮断开连接</tooltip>"</button>
</controls>

第四步:使用以下 API 方法激活或停用状态
        在Button(Connect)的OnClick 写入:
        c+代码

FrameworkApplication.State.Activate("Connected_state");

         vb

FrameworkApplication.State.Activate("Connected_state")

        在Button(Disconnect)的OnClick 写入:
        c+

FrameworkApplication.State.Deactivate("Connected_state");

       vb

FrameworkApplication.State.Deactivate("Connected_state")

效果如下:初时状态

点Connect后,效果:

再点Disconnect后,效果:

如:具体应用,按需求激活