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后,效果:

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

相关推荐

  1. WPF 禁用时,显示悬浮提示

    2024-01-09 11:32:03       43 阅读
  2. Wpf-自定义状态

    2024-01-09 11:32:03       45 阅读
  3. IOS APP 常见UI

    2024-01-09 11:32:03       30 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-09 11:32:03       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-09 11:32:03       106 阅读
  3. 在Django里面运行非项目文件

    2024-01-09 11:32:03       87 阅读
  4. Python语言-面向对象

    2024-01-09 11:32:03       96 阅读

热门阅读

  1. ES6---Set和Map详解

    2024-01-09 11:32:03       39 阅读
  2. NTP服务

    NTP服务

    2024-01-09 11:32:03      58 阅读
  3. 数据的相似度计算

    2024-01-09 11:32:03       56 阅读
  4. vue 实现调起打印机打印图片 与图片下载

    2024-01-09 11:32:03       58 阅读
  5. 图片自适应各种设备尺寸

    2024-01-09 11:32:03       55 阅读
  6. 【Leetcode】238.除自身以外数组的乘积

    2024-01-09 11:32:03       68 阅读
  7. 深度学习知识点总结

    2024-01-09 11:32:03       55 阅读
  8. Seata分布式事务

    2024-01-09 11:32:03       62 阅读